Android学习(14) -- 在内部存储空间中读写文件
2016-04-10 21:39
477 查看
在内部存储空间中读写文件
小案例:用户输入账号密码,勾选“记住账号密码”,点击登录按钮,登录的同时持久化保存账号和密码1. 定义布局
2. 完成按钮的点击事件
弹土司提示用户登录成功
Toast.makeText(this, "登录成功", Toast.LENGTH_SHORT).show();
3. 拿到用户输入的数据
判断用户是否勾选保存账号密码
CheckBox cb = (CheckBox) findViewById(R.id.cb); if(cb.isChecked()){ }
4. 开启io流把文件写入内部存储
直接开启文件输出流写数据
//持久化保存数据 File file = new File("data/data/com.exp.rwinrom/info.txt"); FileOutputStream fos = new FileOutputStream(file); fos.write((name + "##" + pass).getBytes()); fos.close();
读取数据前先检测文件是否存在
if(file.exists())
读取保存的数据,也是直接开文件输入流读取
File file = new File("data/data/com.exp.rwinrom/info.txt"); FileInputStream fis = new FileInputStream(file); //把字节流转换成字符流 BufferedReader br = new BufferedReader(new InputStreamReader(fis)); String text = br.readLine(); String[] s = text.split("##");
读取到数据之后,回显至输入框
et_name.setText(s[0]); et_pass.setText(s[1]);
应用只能在自己的包名目录下创建文件,不能到别人家去创建
直接复制项目
需要改动的地方:项目名字
应用包名
R文件重新导包
使用路径api读写文件
getFilesDir()得到的file对象的路径是data/data/com.exp.rwinrom2/files存放在这个路径下的文件,只要你不删,它就一直在
getCacheDir()得到的file对象的路径是data/data/com.exp.rwinrom2/cache
存放在这个路径下的文件,当内存不足时,有可能被删除
系统管理应用界面的清除缓存,会清除cache文件夹下的东西,清除数据,会清除整个包名目录下的东西
相关文章推荐
- Android利用缩放加载大图片避免内存溢出
- Android下基于SDL的位图渲染(一)
- Android学习(13) -- Android中对内部存储操作说明
- Android 内存泄漏总结
- Android之ListView的使用
- Android线程池使用
- 解决win和ubuntu12.10下adb devices 无法检测android手机问题
- Android 博客周刊13期
- Android学习(19) -- 数据存储之File (简单登录保存用户名和密码)
- Android实现 画几何图形总结
- Android 开发常见问题汇总
- Android完全退出应用程序
- 使用字符串资源
- 提高你使用android studio的效率之键盘篇
- android自定义view属性
- TextView高级使用:SpannableString
- android自定义view
- Android开发学习之路-Android Studio真神器!
- android 布局属性(alignBaseLine在最后有详细解释)
- Android 联系人数据库介绍以及对联系人的基本操作