猿问

文件路径无效,但仅当我使用字段构建文件名时

以下给了我一个FileNotFoundException: Invalid file path


String fileName = "folder/file" + "." + this.ext;

try {

  File file = new File(fileName);

} catch(Exception e){

}

this.ext 之前已设置为"txt"


经过一番尝试后,我发现这效果非常好。


String ext = "txt";

String fileName = "folder/file" + "." + ext;

try {

  File file = new File(fileName);

} catch(Exception e){

}

为什么我不能使用字段?


守候你守候我
浏览 75回答 2
2回答

跃然一笑

没有理由不能使用字段 ie this.ext。如果你把调试点放在下面一行,你会发现它this.ext没有设置为"txt"String fileName = "folder/file" + "." + this.ext;如果您对调试器不熟悉,只需将以下行放在上面的行之前,您就可以找到问题:System.out.println("this.ext="+this.ext);

潇湘沐

查看调试器后,看起来我的字段的值为“\0\0\0\0\0txt”(即 NUL ascii 字符)。Java 将“\0”视为空字符串,因此我的 println 语句没有显示问题。这肯定是我在大学四年多以来第一次需要使用调试器!
随时随地看视频慕课网APP

相关分类

Java
我要回答