无效的转义序列(有效的转义序列包括 \b \t \n \f \r \" \' \\ )

20

我正在尝试使用java.util.Scanner将文件读入我的Java程序,当我输入下面的代码时,会出现上述消息(我是Java新手) - 有人可以帮忙吗?(我查看了某人使用自己的代码得到的类似消息,但对我来说太复杂了!)。 我使用的操作系统是Windows 7。

BufferedReader job = new BufferedReader
               (new FileReader("\My Documents\JOBS\newfile.txt"));
4个回答

36

您需要在文件路径中转义 "\"。

BufferedReader job = new BufferedReader 
               (new FileReader("\\My Documents\\JOBS\\newfile.txt"));

20

嗨Yi,感谢您的超快速回复 - 将所有\替换为\还是特定的一个 - 哪一个? - Kariuki
请阅读文章: http://en.wikipedia.org/wiki/Escape_character#Programming_and_data_formats,这篇文章是关于编程和数据格式中转义字符的。 - Karoly Horvath

0

如果您正在使用Eclipse,有一个设置可以在粘贴时自动插入转义字符:

窗口 -> 首选项 -> Java -> 编辑器 -> 输入 -> 在字符串文字中 -> 粘贴到字符串文字中时转义文本

然后,当像D:\Env\Images\image1.png这样的内容在您的剪贴板中,并将其粘贴到Eclipse中时,它会自动变成这样:D:\\Env\\Images\\image1.png


0

尝试寻找解决之前遇到的类似问题时,我意识到这种问题有时取决于操作系统。我正在使用 Windows 11。你能相信吗,将所有反斜杠改为正斜杠竟然解决了问题/错误?虽然我参与讨论比较晚,但这可能对未来有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接