Android中常见的数据存储方式,存文件和存 SharedPrefrence , 他们都是存在在/data/data/com.xxxx.xxxx/ 下面。
常用写法如下:
package com.example.file;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import android.content.Context;
import android.content.SharedPreferences;
public class FileAdapter {
private static final String NAME = “data”;
private Context mContext;
private SharedPreferences mSp;
private SharedPreferences.Editor mSpEditor;
public FileAdapter(Context context) {
mContext = context;
initSharedPreference();
}
public void saveStr(String inputTxt) {
FileOutputStream outstream = null;
BufferedWriter writer = null;
try {
outstream = mContext.openFileOutput(NAME, Context.MODE_PRIVATE);
writer = new BufferedWriter(new OutputStreamWriter(outstream));
writer.write(inputTxt);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (writer != null) {
writer.close();
}
} catch (IOException e2) {
e2.printStackTrace();
}
}
}
public String getStr() {
FileInputStream instream = null;
BufferedReader reader = null;
StringBuilder content = new StringBuilder();
try {
instream = mContext.openFileInput(NAME);
reader = new BufferedReader(new InputStreamReader(instream));
String line = "";
while ((line = reader.readLine()) != null) {
content.append(line);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (reader != null) {
reader.close();
}
} catch (IOException e2) {
e2.printStackTrace();
}
}
return content.toString();
}
private void initSharedPreference() {
mSp = mContext.getSharedPreferences("sp", Context.MODE_PRIVATE);
mSpEditor = mSp.edit();
}
// sp put int
public void putSpString(String key, String value) {
if (mSp != null && mSpEditor != null) {
mSpEditor.putString(key, value);
mSpEditor.commit();
}
}
public String getSpString(String key) {
if (mSp != null) {
return mSp.getString(key, "");
}
return null;
}
}