猿问

java.lang.IllegalArgumentException:包含路径分隔符

java.lang.IllegalArgumentException:包含路径分隔符

我的代码中有一个文件名:

String NAME_OF_FILE="//sdcard//imageq.png";FileInputStream fis =this.openFileInput(NAME_OF_FILE); // 2nd line

我在第二行收到错误:

05-11 16:49:06.355:ERROR / AndroidRuntime(4570):引起:java.lang.IllegalArgumentException:文件//sdcard//imageq.png包含路径分隔符

我也试过这种格式:

String NAME_OF_FILE="/sdcard/imageq.png";


慕姐8265434
浏览 541回答 3
3回答

GCT1015

此方法在应用程序的私有数据区域中打开一个文件。您无法使用此方法打开此区域中的子目录中的任何文件或完全打开其他区域中的任何文件。因此,使用FileInputStream直接的构造函数来传递路径,其中包含一个目录。

牧羊人nacy

解决方案是:FileInputStream fis = new FileInputStream (new File(NAME_OF_FILE));  // 2nd lineopenFileInput方法不接受路径分隔符。别忘了fis.close();在末尾。

当年话下

openFileInput()如果要访问路径,则不接受路径,仅接受文件名,使用File file = new File(path)和对应FileInputStream
随时随地看视频慕课网APP

相关分类

Android
我要回答