我有一个包含XML(包括正文和元数据)的字符串对象。 当我尝试解析它时,出现以下错误:
org.xml.sax.SAXParseException; lineNumber:1; columnNumber:1;序言中不允许内容
我尝试使用My_XML.getBody()
函数,但没有帮助。
我需要一些有关如何编辑XML的帮助,以便可以使用它。
{"body": <<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TccSubscriptionData xmlns="tcc.generated.com">
<MessageKey>
<MessageKey>12</MessageKey>
<Receiver>asd</Receiver>
<Timestamp>2018-06-20T14:33:22.968+02:00</Timestamp>
<ResponseType>sdf</ResponseType>
<CorrelationId>0</CorrelationId>
</MessageKey>
</TccSubscriptionData>
, "metadata": {"field1": "aaa", "field2": 123, "field3": aaa, "field4": "aaa", "field5": 123, "field6": {"field7":"aaa","field8":"a12d","field9":"aaa"}}}
答案 0 :(得分:0)
您的示例XML嵌入在JSON中,而您的JSON不是well-formed。
为了将XML表示为字符串,必须用"
包围它,并且必须用{{1}替换用作XML标记的"
字符}个字符或将其转义为'
。您还必须删除换行符或replace them with \\n
。
然后,当然,作为M. le Rutte comments,请确保为XML解析器提供从JSON提取的XML,而不是JSON消息本身。