Android中“父目录不可写”错误

时间:2012-03-03 09:16:20

标签: android

我想在data/data目录中创建一个目录来托管我的文件,但是当我想这样做时,我收到一个错误:文件目录不可写:data /

即使创建data/data/

,我也无法做任何事情

我使用的是Android级别7

File myFile = new File(Enviroment.getDataDirecotry() + "/" + "someFile.txt");
FileOutputStream stream = FileOutputStream (myFile);
stream.createFile();

我在createfile之后遇到问题,我也不确定这里使用的代码文本是否正确。

2 个答案:

答案 0 :(得分:1)

您通常无法从根目录访问文件系统 - 您需要使用getExternalStorageDirectory()查询操作系统以获取适当的根目录。

此外,如果您想访问文件系统的大部分内容,则必须在Android清单中设置适当的权限。

答案 1 :(得分:1)

首先在manifest.xml中添加以下标记

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

然后您可以使用openFileOutput()方法在/data/data/<package_name>目录中创建文件 例如:

OutputStream outStream;
outStream = openFileOutput( "test.txt",MODE_PRIVATE);

OutputStreamWriter outStreamWriter = new OutputStreamWriter(
                            outStream, "UTF-8");
                    outStreamWriter.write("this is a test");
                    outStreamWriter.close();