2

我有一个奇怪的问题。

我在我的应用程序中调用 Web 服务,有时在控制台中打印出这样的响应,"\n"现在我想用空括号替换它,这样它就会像这样打印""

所以我尝试过

String serverResponse = Util.callService(.....);
System.out.println(serverResponse.replace("\"\\n\"","\"\"");

但输出仍然"\n"不打印""

当我对字符串进行硬编码时,它可以工作

例如

String str = ""\"\\n\""; // equals to "\n" in console 
 System.out.println(serverResponse.replace("\"\\n\"","\"\""); //prints ""

问题是什么 ?它是编码的东西吗?为什么第一个代码不适用于服务器响应?

注意:我无法控制 Web 服务。

4

1 回答 1

0

我解决它需要 4 个反斜杠,而不是两个:

String serverResponse = Util.callService(.....);
System.out.println(serverResponse.replace("\"\\\\n\"","\"\"");
于 2013-11-02T02:23:15.113 回答