0

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

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

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

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

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

4

2 回答 2

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内部存储

于 2013-10-22T16:52:24.120 回答
0

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

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

既写又读。它在文件/data/data/com.myapplication/files/夹中创建了我的文件。

于 2013-10-28T16:39:49.900 回答