我使用下面的代码在内部存储中创建文件。
ContextWrapper contextWrapper = new ContextWrapper(getApplicationContext());
File directory = contextWrapper.getDir(filepath, 0);
File myInternalFile = new File(directory , "MySampleFile.txt");
//for writing
FileOutputStream fos = null;
try {
fos = new FileOutputStream(myInternalFile);
fos.write("data".toString().getBytes());
fos.close();
}
catch (FileNotFoundException e1) {
e1.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
//for reading
String myData="";
try {
FileInputStream fis = new FileInputStream(myInternalFile);
DataInputStream in = new DataInputStream(fis);
BufferedReader br =
new BufferedReader(new InputStreamReader(in));
String strLine;
while ((strLine = br.readLine()) != null) {
myData = myData + strLine;
}
in.close();
} catch (IOException e) {
e.printStackTrace();
}
Toast.makeText(getApplicationContext(), myData, Toast.LENGTH_SHORT).show();//prints data
我能够读取和写入该文件。 我想知道的是如何浏览文件或查看文件? 使用过的文件浏览器,但没有帮助
答案 0 :(得分:0)
你忘记了
myInternalFile.createNewFile();
UPD 我收到了你的问题。来自doc ContextWrapper.getDir
:
检索,创建需要的新目录,应用程序可以在其中放置自己的自定义数据文件。你可以使用 返回File对象以创建和访问此目录中的文件。 请注意,只能访问通过File对象创建的文件 通过您自己的申请;你只能设置整个模式 目录,而不是单个文件。
因此,只有您的应用可以访问该文件夹。可能有可能在root设备上达到它。为了获取文件的路径,只需在日志中打印或检查调试模式。