【问题标题】:Escape space with backslash in java在java中用反斜杠转义空间
【发布时间】:2015-11-19 21:57:06
【问题描述】:

我想替换路径字符串中的空格。我在下面尝试过,但似乎没有用:

String path = "/Users/TD/San Diego";
path=path.replaceAll(" ","\\ ");
System.out.println(path);

目标是转化

“/Users/TD/San Diego”到“/Users/TD/San\ Diego”

字符串中的任何其他空格也需要替换为“\”

【问题讨论】:

  • 为什么?他们按原样工作。

标签: java string replace escaping replaceall


【解决方案1】:

你可以改变

path = path.replaceAll(" ", "\\ ");

转义反斜杠

path = path.replaceAll(" ", "\\\\ ");

当我这样做时,我得到(请求的)

/Users/TD/San\ Diego

另一种选择是使用String.replace like

path = path.replace(" ", "\\ ")

输出相同。

【讨论】:

    【解决方案2】:

    建议的解决方案对我不起作用(在 Android Java 中)。

    所以这是我经过多次尝试后想出的:

    path = path.replace(" ", (char) 92 + " ");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-19
      • 1970-01-01
      • 2015-09-21
      • 2011-11-09
      相关资源
      最近更新 更多