我的应用程序创建了一个文本文件。我希望用户可以轻松访问这些文件。我在SD卡上写了这个文本文件。我想允许用户使用其他程序编辑文件 我使用文件资源管理器看到这些文件,但我看不到使用文件管理器。
String extPath = Environment.getExternalStorageDirectory().getAbsolutePath();
try{
String pathPrefix = extPath + "/Android/data/" + getApplication().getPackageName() + "/cache/";
//File extPathFile = getExternalFilesDir(pathPrefix+FileName);
Log.d("TAG", "pathPrefix="+pathPrefix);
Log.d("TAG", "FileName="+FileName);
File file = new File(pathPrefix, FileName+".txt");
if(file.exists()){
Log.d("TAG", "File("+pathPrefix+FileName+")exist");
};
OutputStreamWriter outStream =
new OutputStreamWriter(new FileOutputStream(file));
logcat的:
01-22 14:26:15.834: D/TAG(14290): pathPrefix=/mnt/sdcard/Android/data/mast.avalons/cache/
01-22 14:26:15.834: D/TAG(14290): FileName=S000004_21-10-2011
01-22 14:26:16.044: D/TAG(14290): java.io.FileNotFoundException: /mnt/sdcard/Android/data/mast.avalons/cache/S000004_21-10-2011.txt (No such file or directory)
谢谢!
答案 0 :(得分:2)
我认为你应该创建中间目录:
new File(pathPrefix).mkdirs();