Tal*_*eem 4 java android exception file illegalargumentexception
我正在尝试写入我的HTC One上的输出文件并在LogCat中获取以下消息:
11-21 08:05:18.228:W/System.err(6609):java.lang.IllegalArgumentException:File /storage/emulated/0/com.example.pattern1/myfile.txt包含路径分隔符
源代码如下:
protected void writeToFile(String string){
File patternDirectory = new File(Environment.getExternalStorageDirectory().getAbsolutePath().toString()+"/com.example.pattern1/myfile.txt");
patternDirectory.mkdirs();
FileOutputStream outputStream;
try {
outputStream = openFileOutput(patternDirectory.getAbsolutePath().toString(), Context.MODE_APPEND);
outputStream.write(string.getBytes());
TextView t = (TextView)findViewById(R.id.bottomMidText);
t.setText(patternDirectory.getAbsolutePath().toString());
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
如果有人可以帮助确定问题,我将不胜感激.
Blu*_*ien 16
openFileInput方法不接受路径分隔符.('/')
它只接受您要打开/访问的文件的名称.所以改变声明
outputStream = openFileOutput(patternDirectory.getAbsolutePath().toString(), Context.MODE_APPEND);
Run Code Online (Sandbox Code Playgroud)
至
outputStream = new FileOutputStream (new File(patternDirectory.getAbsolutePath().toString()), true); // true will be same as Context.MODE_APPEND
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
25836 次 |
| 最近记录: |