一、简单案例
package com.administrator.cachedemo; import android.content.Context; import android.content.SharedPreferences; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } /** * SharedPreferences存储数据 */ private void testSharedPreferences(){ /** * 第一个参数:存放在私有空间里的文件名称 * Context.MODE_PRIVATE支持读和写 */ SharedPreferences sharedPreferences = getSharedPreferences("sharedpreferences", Context.MODE_PRIVATE); /** * 存储 */ sharedPreferences.edit().putInt("test", 1).commit(); // sharedPreferences.edit().putInt("test", 1).putInt("test2", 2).commit();// editor.apply(); // sharedPreferences.getString("name",null);//第二个参数是获取的时候,没有时,传null /** * 读取 */ int value = sharedPreferences.getInt("test", 0); Log.e("lxn", "value:" + value); } }
二、读取内外部存储空间
MainAvtivity.java
package com.administrator.cachedemo; import android.os.Environment; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.text.TextUtils; import android.util.Log; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.FileWriter; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } /** * 读写内部存储空间 */ private void testInternalStorage() { File cacheDir = getCacheDir(); File parentDir = new File(cacheDir, "mycache"); if (!parentDir.exists()) {//判断文件夹是否存在 parentDir.mkdirs();//mkdir()创建单个目录,mkdirs()创建多个逐级目录 } File file = new File(parentDir,"text.txt"); try { FileReader fileReader = new FileReader(file); BufferedReader bufferedReader = new BufferedReader(fileReader); String line = null; while ((line = bufferedReader.readLine()) != null) { Log.e("lxn", "line:" + line); } bufferedReader.close(); fileReader.close(); } catch (Exception e) { Log.e("lxn", "testInternalStorage", e); } } /** * 读写外部存储空间 */ private void testRxternalStorage(){ if(TextUtils.equals(Environment.getExternalStorageState(),Environment.MEDIA_MOUNTED)){//判断SD卡是否挂载上 return; } File cacheDir = Environment.getExternalStorageDirectory();//获取外部存储目录 File parentDir = new File(cacheDir, "mycache"); if (!parentDir.exists()) { parentDir.mkdirs(); } File file = new File(parentDir, "test.txt"); try { FileWriter fileWriter = new FileWriter(file); fileWriter.write("this is test2"); fileWriter.flush(); fileWriter.close(); } catch (Exception e) { Log.e("lxn", "testInternalStorage", e); } try { FileReader fileReader = new FileReader(file); BufferedReader bufferedReader = new BufferedReader(fileReader); String line = null; while ((line = bufferedReader.readLine()) != null) { Log.e("lxn", "line:" + line); } bufferedReader.close(); fileReader.close(); } catch (Exception e) { Log.e("lxn", "testInternalStorage", e); } } }