- 简单介绍数据存储的几种常见方式
-
File 文件存储:写入和读取文件的方法和 Java中实现I/O的程序一样。
FileOutPutStream fos = openFileOutPut("filename",context.MODE_PRIVATE); //追加文件时MODE_APPEND 目录在data/data/files/ //同理openFileInput() //第二种也是在此目录 File filesDir = getFilesDir();
//sd卡目录 File sdCard = Environment.getExternalStorageDirectory(); File directory_pictures = new File(sdCard, "Pictures"); Log.i(TAG,"directory_pictures="+directory_pictures); //第二种 File directory_pictures = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES); Log.e(TAG, "directory_pictures="+directory_pictures);
File externalFilesDir = getExternalFilesDir(null); Log.i(TAG, "externalFileDir = "+externalFilesDir);
-
SharedPreferences存储:一种轻型的数据存储方式,常用来存储一些简单的配置信息,本质是基于XML文件存储key-value键值对数据。使用就省略了。
-
SQLite数据库存储:一款轻量级的关系型数据库,它的运算速度非常快,占用资源很少,在存储大量复杂的关系型数据的时可以使用。
-
ContentProvider:四大组件之一,用于数据的存储和共享,不仅可以让不同应用程序之间进行数据共享,还可以选择只对哪一部分数据进行共享,可保证程序中的隐私数据不会有泄漏风险。
-
使用LitePal 直接参考郭霖的文章。
-