尝试在Android SD卡上编写midi文件时出现以下错误:
12-14 16:22:22.219: ERROR/Thread writer(1108): java.io.FileNotFoundException: /mnt/sdcard/folder/midifiles/file.mid (Is a directory) in /mnt/sdcard/folder/midifiles/
这是相关的代码:
public void writeFile(String filename, String dir, int bpm) throws Exception {
File f = new File(dir,filename);
if(!f.exists()) {
f.mkdirs();
if(!f.createNewFile()) {
return;
}
}
FileOutputStream fos = new FileOutputStream(f);
我正在通过
收到路径Environment.getExternalStorageDirectory()
也包括相关许可。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
文件编写器位于外部项目/库中...如果这在任何情况下都有用。
我想这是一个简单的错误,但老实说我不知道这里出了什么问题。
提前致谢。
答案 0 :(得分:0)
您正在使用
创建目录/mnt/sdcard/folder/midifiles/file.mid
f.mkdirs();
你应该这样做:
File f = new File(dir);
if(!f.exists()) {
f.mkdirs();
File f1 = new File(dir,filename);
if(!f1.createNewFile()) {
return;
}
}
或只是
File f = new File(dir,filename);
if(!f.exist()) {
f.createNewFile();
return;
}
答案 1 :(得分:0)
你在手机上运行吗?或连接到您的电脑?因为它可能正在你的电脑上看。