android中的数据存储(1)

本文详细介绍了Android应用中使用SharedPreferences和文件进行数据存储的方法,包括如何将数据保存到preferences和文件中,以及如何从preferences和文件中读取数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(1)数据存储之Shared Preferences:用来存储“key-value”格式的数据

    public static final String PREFS_NAME = "MyPrefsFile";

Boolean mbMusic
= false;


//保存到preferences:
SharedPreferences settings = getPreferences(0);//或者SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
settings.edit()
.putBoolean(
"bMusic", mbMusic)
.commit();

//读取preferences
SharedPreferences settings = getPreferences(0);//或者SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
settings.getBoolean("bMusic", false);

(2)数据存储之Files

public class ReadWrite extends Activity {
private static final String str = "文件输入输出练习";
/** Called when the activity is first created. */
TextView textView ;
String fileName
= "aa.txt";
String result;
public static final String PREFS_NAME = "MyPrefsFile";
Boolean mbMusic
= false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textView
= (TextView) findViewById(R.id.textView);
WirteData(fileName,str);
//写数据
result=ReadData("aa.txt");//读取数据
textView.setText(result);
}
private String ReadData(String fileName) {
// TODO Auto-generated method stub
String result = "";
try {
FileInputStream fin
=openFileInput(fileName);
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
result
= EncodingUtils.getString(buffer, "UTF-8");
fin.close();
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;

}
private void WirteData(String fileName, String str) {
// TODO Auto-generated method stub
try {
FileOutputStream fout
=openFileOutput(fileName, MODE_PRIVATE);
byte [] buffer = str.getBytes();
fout.write(buffer);
fout.close();
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
}

转载于:https://www.cnblogs.com/lxmanutd/archive/2011/07/28/2119627.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值