如何用java字符串表示XML转义符

如何用java字符串表示XML转义符,java,xml,xsd,Java,Xml,Xsd,我使用的是anyurixsd数据类型。 我正在使用java字符串生成器构建它。 现在为了遵守它,我需要从中删除char#,并替换为转义字符。 现在我试着用%23替换它,据我所知,这是这个字符的十六进制表示形式,但没有恶意。 如果有人遇到此问题,请与我们分享。XML等效语法,例如',您可以使用它。这: System.out.println(StringEscapeUtils.escapeXml("<some foo=\"xxx&\"/>")); 但您不应该走这条路,而应该学习

我使用的是anyurixsd数据类型。 我正在使用java字符串生成器构建它。 现在为了遵守它,我需要从中删除char#,并替换为转义字符。 现在我试着用%23替换它,据我所知,这是这个字符的十六进制表示形式,但没有恶意。
如果有人遇到此问题,请与我们分享。

XML等效语法,例如',您可以使用它。这:

System.out.println(StringEscapeUtils.escapeXml("<some foo=\"xxx&\"/>"));
但您不应该走这条路,而应该学习如何使用适当的Java库生成XML。看看这附近的风景吧

编辑
您可以使用&#xNN;,对任何unicode字符进行转义;,其中NN是给定字符的十六进制值将是#

听起来像是在构建XML。如果是这样,请使用XML API而不是StringBuilder。这会让你省去很多心痛。jon你说的有些道理,但我所做的只是小题大做。@Chris我没有任何代码试图用正确的方式来表示#在字符串中,根据任何uri定义它都是有效的。你能发布一个你正在接收的XML示例吗。这个#不需要逃跑。谢谢,但我正在做的是模拟发送此xml的客户端。因为代码需要修改,所以我不能接受您的建议,我确实仔细检查了问题,但它们并没有触及我需要的内容。这看起来更像我正在寻找的内容,但以同样的方式表示的内容是什么?我认为,若您希望它符合任何uri规范,则不需要是EscapeEdit。已经有了Escape正在进行!So&;是一个逃逸的&。您需要停用转义以使其正常工作。@raven:No,代表“小于”,用于转义此字符:@raven:See here:@raven:我的意思是您应该使用XML等效语法,而不是编码的URI字符串。为char'
&lt;some foo=&quot;xxx&amp;&quot;/&gt;