1

例如当我使用 C:\\a.txt

它工作正常,但是当我使用 C:\a.txt

它不是。

任何人都可以解释两者之间的区别,除了说一个有效而另一个无效。

谢谢

4

5 回答 5

6

\是用于转义其他特殊字符的特殊字符。因此,如果单个\存在,它将被解释为字符串中的特殊字符,但由于没有什么可以转义,因此被认为是“错误用法”。

因此,\必须将其转义一秒钟\以赋予其字面意义。

于 2012-07-01T12:52:12.100 回答
2

单个\表示对编译器具有特定含义的转义序列。\\基本上逃脱了转义序列。因此,如果您键入C:\a编译器将\a其视为转义序列,这是您不打算的。

http://docs.oracle.com/javase/tutorial/java/data/characters.html

于 2012-07-01T12:51:51.407 回答
2

在 java 中,该\符号保留用于与其他 char 一起使用以制作特殊符号,例如,

\n is new line
\t is a tab

所以如果你\在其中使用一个喜欢C:\a.txt它会认为这\a是一个特殊的字符,而使用\\将被转换为一个\

于 2012-07-01T12:54:05.290 回答
0

只是要记住的一句话:Backslash is NOT a path separator!

于 2012-07-01T12:55:37.047 回答
0

它也很好地使用 File.separator 来获取运行 JVM 的操作系统所需的分隔符 '/' 或 '\' (如果还有其他人,那么我不知道它们)。

于 2012-07-01T17:07:37.250 回答