博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android:数据持久化
阅读量:7248 次
发布时间:2019-06-29

本文共 2480 字,大约阅读时间需要 8 分钟。

读写普通文本文件:

public class MainActivity extends Activity {
EditText edit; @Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); edit = (EditText) findViewById(R.id.edit); BufferedReader reader = null; FileInputStream is; StringBuilder content = new StringBuilder(); try {
is = openFileInput("TestFileWrite"); reader = new BufferedReader(new InputStreamReader(is)); String line; while ((line = reader.readLine()) != null) {
content.append(line); } } catch (Exception e) {
e.printStackTrace(); } finally {
try {
if (reader != null) {
reader.close(); } } catch (IOException e) {
e.printStackTrace(); } } edit.setText(content.toString()); edit.setSelection(content.toString().length()); } @Override protected void onDestroy() {
super.onDestroy(); String text = edit.getText().toString(); BufferedWriter writer = null; try {
FileOutputStream os = openFileOutput("TestFileWrite", Context.MODE_PRIVATE); writer = new BufferedWriter(new OutputStreamWriter(os)); writer.write(text); } catch (Exception e) {
e.printStackTrace(); } finally {
if (writer != null) {
try {
writer.close(); } catch (IOException e) {
e.printStackTrace(); } } } }}

使用SharedPreferences对象持久化数据

// SharedPreferences pref = this.getPreferences(Context.MODE_PRIVATE);  //文件名即Activity类名// SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this);  //文件名即主类包名_preferences        SharedPreferences pref = this.getSharedPreferences("filename", Context.MODE_PRIVATE);Editor editor = pref.edit();editor.putBoolean("remember_password", true);editor.putString("username", "admin");editor.putString("password", "123");// editor.clear();editor.commit();pref.getString("name", "no_name");pref.getString("password", "no_pass");pref.getBoolean("remember_password", false);

文件存储位置:/data/data/主类包名/ 目录,主类包名,不一定是当前包名。

转载于:https://www.cnblogs.com/xuejianbest/p/10285033.html

你可能感兴趣的文章
配置云存储网关在线服务支持多个互联VPC-高速通道版
查看>>
6个步骤从头开始编写机器学习算法:感知器案例研究
查看>>
NCalc 学习笔记 (三)
查看>>
NetBeans 成为 Apache 软件基金会顶级项目
查看>>
SSRF在Redis中反弹shell
查看>>
UML关系图
查看>>
SpringBoot 手写切片/面向切面编程
查看>>
动态 Web Server 技术发展历程
查看>>
使用pymysql(使用一)
查看>>
Redisson 3.10.6 发布,Redis 客户端
查看>>
日志框架 - 基于spring-boot - 使用入门
查看>>
用libtommath实现RSA算法
查看>>
基于POLARDB数据库的压测实践
查看>>
通过工具SecureCRTPortable将项目部署到服务器上
查看>>
利用QRCode实现待logo的二维码的创建
查看>>
【云周刊】第190期:阿里云超算揭秘:虚拟机的心脏,物理机的肌肉
查看>>
崩溃bug日志总结3
查看>>
推荐一个有趣的Chrome扩展程序-查看任意网站的开发技术栈
查看>>
shell技巧5 - 全自动打包ipa
查看>>
uC/OS-II源码分析(六)
查看>>