Android 写入SD卡时出错
请帮忙。。。 我在应用程序的第一个活动中创建了一个文本文件,一切正常。 在我的下一个活动中,我想附加到文本文件中 但是,当我尝试附加捕获时,会出现以下错误Android 写入SD卡时出错,android,Android,请帮忙。。。 我在应用程序的第一个活动中创建了一个文本文件,一切正常。 在我的下一个活动中,我想附加到文本文件中 但是,当我尝试附加捕获时,会出现以下错误 mnt/scard/PatRecords/testfile.txt contains a file seperator 并且不会向文件中添加任何内容 我的追加代码是 try { File directory = new File (Environment.getExternalStorageDirectory().
mnt/scard/PatRecords/testfile.txt contains a file seperator
并且不会向文件中添加任何内容
我的追加代码是
try {
File directory = new File
(Environment.getExternalStorageDirectory().getPath()+"/PatRecords");
FileOutputStream fOut = openFileOutput(directory.getPath()+"/"+FileName$, MODE_APPEND);
OutputStreamWriter OutWriter = new OutputStreamWriter(fOut);
OutWriter.write(TestNo$+"\n");
OutWriter.write(Date$+"\n");
OutWriter.close();
fOut.close();
} catch (Exception e) {
Toast.makeText(getBaseContext(), e.getMessage(),
Toast.LENGTH_SHORT).show();
Error=1;
}//End of try/catch
我已经试着拆除分离器等,但仍然不起作用,就我所能看到的
捕获错误中显示的路径是正确的…?openFileOutput()
用于打开位于内存中的程序数据文件夹中的文件,您只能提供文件名,而不能提供路径,因此mnt/scard/PatRecords/testfile.txt包含文件分隔符
如果要打开SD卡上的文件,必须使用FileOutputStream()
或类似的方法:
File of = new File(Environment.getExternalStorageDirectory(), filename);
FileOutputStream fos = new FileOutputStream(file);
fos.write(data);
fos.flush();
fos.close();
你有什么例外吗?子连接-仅收费?尝试从您的变量中删除$符号。我尝试了上述代码,虽然它找到并打开了正确的文件,但它现在覆盖了文件,没有添加到文件中。Eclipse IDE不允许我在尝试这种方式时将模式添加到代码中这是另一个问题,这里已经解决了: