我如何为其他应用程序编写可读文件?

时间:2012-01-22 12:39:19

标签: android file sd-card

我的应用程序创建了一个文本文件。我希望用户可以轻松访问这些文件。我在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)

谢谢!

1 个答案:

答案 0 :(得分:2)

我认为你应该创建中间目录:

new File(pathPrefix).mkdirs();
相关问题