Java字符串停止转义字符动作

问题描述 投票:0回答:2

我的问题是假设我有一个字符串和一个字符串生成器:

String sample = "Ran\"dom";
StringBuilder sb = new StringBuilder("Hello");

将示例字符串附加到 StringBuilder 并打印字符串生成器时,它返回“HelloRan”dom”

这里示例中“\”的目的是转义“字符。但是,我不希望发生该操作。我希望附加示例后 sb 的输出为“HelloRan\”dom”。我该怎么做。

java escaping stringbuilder
2个回答
1
投票

您需要用另一个“\”来转义整个“\”。 尝试一下,

String sample = "Ran\\\"dom";

您可以从 https://www.freeformatter.com/java-dotnet-escape.html

了解有关转义字符的更多信息

0
投票

迟到总比不到好,尝试一下:

import org.apache.commons.text.StringEscapeUtils;
... 
String sample = "Ran\"dom";
StringBuilder sb = new StringBuilder("Hello");

System.out.println(sb+StringEscapeUtils.escapeJava(sample)); 

pom.xml:

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-text</artifactId>
    <version>1.10.0</version>
</dependency>
© www.soinside.com 2019 - 2024. All rights reserved.