1 Context.onpenFileOutput(文件名,操作模式)
文件名 默认 /data/data/<packagename>/files/
操作模式 MODE_PRIVATE MODE_APPEND
2 Context.getDir(文件名,操作模式) 在应用程序的数据文件下获取或者创建 文件名 对应的子目录
3 File.getFilesDir() 获取该应用程序的数据文件夹的绝对路径
String[] fileList(); 返回该应用数据文件夹的全部文件
二 读写sdcard上的文件
Environment.getExternalStoreageState() 方法判断手机上面是否插了sd卡,且应用程序具有读写sd卡的权限,如下代码返回true
Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)
手机读写sdk的权限
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
tools:ignore="ProtectedPermissions"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
在/data/data/<packagename>/files/下面创建了一个叫做test的文件,并写入数据 记得关闭流
private void setFileOutPut(String text){
FileOutputStream outputStream =null;
BufferedWriter bufferedWriter =null;
try {
//指定文件的操作模式
outputStream = openFileOutput("test",Context.MODE_PRIVATE);//Context.MODE_PRIVATE 回覆盖以前的数据 context.append 会在以前的数据上面进行添加
bufferedWriter =new BufferedWriter(new OutputStreamWriter(outputStream));
bufferedWriter.write(text);
bufferedWriter.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
if(bufferedWriter!=null){
try {
bufferedWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
读取写入的文件