我试图在/data/data/package_name/files
的子目录下创建文件。
例如,/data/data/package_name/files/folder1/file1.txt
。这是我的代码:
FileOutputStream fos;
String path = getFilesDir().toString() + "/" + folderName + "/" + String.valueOf(i+1) + ".txt";
try
{
File f = new File(path);
f.getParentFile().mkdirs();
f.createNewFile();
fos = new FileOutputStream(path, false);
fos.write(array[i].getBytes());
fos.close();
}
catch (Exception e)
{
e.printStackTrace();
}
但我不知道我是否得到许可。当用户重新启动应用程序时,
/data/data/package_name/files
下的文件是否仍然可用?我不想让用户看到我的文件,所以写SDCard并不能解决我的问题。 最佳答案
FileOutputStream fos;
File f = getFilesDir();
try{
String fileName = "test.txt";
String filePath = f.getAbsolutePath()+File.separator+fileName;
fos = new FileOutputStream(filePath);
fos.write(array[i].getBytes());
}
catch (Exception e){
e.printStackTrace();
}finally{
try{
fos.close();
}catch(IOException e1){}
}
这对我有效。