找不到档案 - Android

时间:2013-10-22 16:43:18

标签: android file-io

我在主要活动中创建了一个文件:

        File file = new File("library.xml");
        file.createNewFile();
        FileOutputStream libXml = openFileOutput("library.xml", Context.MODE_PRIVATE);
        libXml.write("[Some XML Data]");

现在我在一个名为DataSource的类中创建了一个 static 方法,在这个类中,我试图从我刚创建的文件中读取:

        File file = new File("library.xml");
        Document data = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(file);

但它在第二行引发了一个异常,说找不到文件......! 可能有什么不对?

2 个答案:

答案 0 :(得分:0)

创建一个存储在内部存储器/存储器中的文件,尝试下面的代码

写入

FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
fos.write(string.getBytes());
fos.close();

阅读

FileInputStream fis = openFileInput(FILENAME);
int value=fis.read()
fis.close();

看看android Internal Storage

答案 1 :(得分:0)

在问题中使用上面的代码甚至没有创建文件,并引发权限拒绝异常,因为它试图在android的根文件夹中创建不允许的文件。所以我只是将上面的行重写为:

    File file = new File(getFilesDir(),"library.xml");

用于写入然后用于读取。它在/data/data/com.myapplication/files/文件夹中创建了我的文件。