參考張澤華視頻
(一)讀寫手機內存卡中的文件
對手機中的文件進行讀寫操作,或者新增一個文件時,可直接使用openFileOutput ?/ ?openFileInput 得到文件的輸出、輸入流。
FileOutputStream fos = this.openFileOutput("private.txt",MODE_PRIVATE);
fos.write("test".getBytes());
上述代碼會在/data/data/com.ljh.basiclogin/files下生成一個文件(若文件不存在)或者寫內容至原有文件 文件的訪問權限有以下三種:
MODE_PRIVATE
MODE_WORLD_READABLE
MODE_WORLD_WRITABLE
(二)讀寫sdcard中的文件
File file = new File("/sdcard/private1.txt");
FileOutputStream fos = new FileOutputStream(file);
fos.write("test".getBytes());
1、考慮權限問題
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
2、在讀取之前先判斷SD卡是否可用
(1)判斷SD卡是否插入
boolean sdCardExist = Environment.getExternalStorageState()
.equals(android.os.Environment.MEDIA_MOUNTED); //判斷sd卡是否存在
(2)獲得sd卡根目錄:
?
if (sdCardExist) {
File dir = Environment.getExternalStorageDirectory();
path = dir.getAbsolutePath();
}
(3)新建目錄
boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); //判斷sd卡是否存在
if (sdCardExist) {
File dir = Environment.getExternalStorageDirectory();
path=dir.getPath()+"/";
File dir= new File(path+ "123");
dir.mkdir();
}