【问题标题】:Why a path needs two slashes ( \\ ) in Eclipse?为什么在 Eclipse 中路径需要两个斜杠( \\ )?
【发布时间】:2018-02-23 23:46:04
【问题描述】:

当我在 Eclipse 中使用以下路径时:

"C:\Users\Me\Desktop\selenium\geckodriver.exe"

有一个红色的x 出现,并带有错误消息。但是当我把它改成:

"C:\\Users\\Me\\Desktop\\selenium\\geckodriver.exe"

一切都很好。谁能解释一下,这是为什么呢?我是否总是需要在路径中添加额外的斜杠?

【问题讨论】:

  • 你的例子是一样的。
  • 不,我使用了两个斜线,但是 stackoverflow 自动只显示一个斜线

标签: java string eclipse path escaping


【解决方案1】:

因为\ 字符在Java 中具有特殊含义。这是一个转义字符。例如,如果您在字符串文字中写入\t,则表示制表符,\n 表示换行符。

要拥有文字 \ 字符,您必须使用转义字符对其进行转义:\\

请参阅 Java 文档中的 Escape Sequences 部分。上述情况也适用于许多其他语言。

【讨论】:

    【解决方案2】:

    在大多数编程语言中,'\' 用作转义字符。

    例子:

    "c:\\Users" 将是 "c:\Users"
    "My name is \"Suppe\"" 将是 "My name is "Suppe""
    "Hello\tWorld" 将是 "Hello World"

    有关此主题的更多信息,您应该阅读:
    https://en.wikipedia.org/wiki/Escape_character

    甚至 stackexchange 也使用反斜杠作为转义字符。您可能注意到了,因为您的帖子的第一个版本有 2 个相同的示例。

    【讨论】:

      【解决方案3】:

      即使在 Eclipse 和 Netbeans 中,当您键入一些字符串时,它们也会检查该字符串是否对应于 regex pattern。单斜杠\ 表示下一个字符将是正则表达式匹配或文字字母、数字或任何您想要的。使用双斜杠\\ 的目的是表明您想要一个文字斜杠。

      所以,当他们复制你输入的字符串时:

      C:\\path\\to\\exe

      会变成

      C:\path\to\exe

      【讨论】:

        猜你喜欢
        • 2013-11-12
        • 2017-06-08
        • 1970-01-01
        • 2011-01-23
        • 2013-12-05
        • 2010-11-30
        • 2021-07-13
        • 2017-06-05
        相关资源
        最近更新 更多