数据存储的几个方式:
1:SharePreferences
好处:存储简单操作方便
不足:只能存储5种简单的数据类型
2:InteralStorage 内部存储方式
好处:私密的空间,存储安全
不足:手机内部存储空间有限
3:ExteralStorage 外部存储方式
好处:空间大
不足:所有人都能看到
4:NetWork Connertion 网络存储方式
ShareProferences 的简单使用
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取SharePro对象 参数1:flag 标记2:方式
SharedPreferences share = getSharedPreferences("text", Context.MODE_PRIVATE);
SharedPreferences.Editor edit = share.edit();
//key value键值对形式
edit.putString("name","qq");
edit.putInt("age",20);
//提交
edit.commit();
//根据key找对应value 参2: 默认值
String name = share.getString("name", null);
int age = share.getInt("age", 0);
Log.i(TAG, "onCreate:name "+ name);
Log.i(TAG, "onCreate:age "+ age);
}
外部和内部存储方式的学习
public class StorageDemo extends AppCompatActivity {
private static final String TAG = "StorageDemo";
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
InteralStorage();
ExteralStorage();
}
public void InteralStorage(){
//获取内部存储路径
File cacheDir = getCacheDir();
//创建文件夹
File fileDir = new File(cacheDir,"mcache");
//判断文件夹是否存在
if(!fileDir.exists()){
fileDir.mkdir();
}
//创建文件
File file = new File(fileDir,"text.txt");
if(file.exists()){
//删除文件
file.delete();
}
try {
FileWriter fw = new FileWriter(file);
fw.write("this a test");
fw.flush();
fw.close();
} catch (Exception e) {
e.printStackTrace();
}
try {
FileReader fr = new FileReader(file);
BufferedReader bfr = new BufferedReader(fr);
String line =null;
while( (line = bfr.readLine())!=null ){
Log.i(TAG, "InteralStorage: "+line);
}
bfr.close();
fr.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public void ExteralStorage(){
//获取外部存储路径
File exteralDir = getExternalCacheDir();
File fileDir = new File(exteralDir,"mcache");
if(!fileDir.exists()){
fileDir.mkdir();
}
//创建文件
File file = new File(fileDir,"text.txt");
if(file.exists()){
file.delete();
}
try {
FileWriter fw = new FileWriter(file);
fw.write("this a test");
fw.flush();
fw.close();
} catch (Exception e) {
e.printStackTrace();
}
try {
FileReader fr = new FileReader(file);
BufferedReader bfr = new BufferedReader(fr);
String line =null;
while( (line = bfr.readLine())!=null ){
Log.i(TAG, "ExteralStorage: "+line);
}
bfr.close();
fr.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}