将xml存储在json对象中

cha*_*sad 14 xml json storing-information

我需要将完整的xml文档存储为json对象的一部分.当我收到请求并尝试从json字符串创建json对象时,如下所示 -

{"content":{
"name" : "xyz",
"details":"<?xml version=\"1.0\" encoding=\"UTF-8\"?>
 <ns0:Report xmlns:ns0=\"http://www.khisko.com/triTypes\">
  <StackTrace>Job-8004 Error in [xxxxxxxxxx]
      Output data invalid&#xD;
  at com.xyz.tst.a(Unknown Source)&#xD;
      caused by: java.lang.NullPointerException&#xD;
   </StackTrace>
   <Msg>Output data invalid</Msg>
  </ns0:Report>"
 }}
Run Code Online (Sandbox Code Playgroud)

我在第一个详细信息字符处收到未终止的字符串错误.我该怎么办呢.

我正在使用org.json.JSONObject构造函数,它以java字符串作为参数并将json作为java字符串传递给上面.

谢谢

bit*_*bhi 8

您可以像这样编码和解码xml字符串

{
  "content": {
    "name": "xyz",
    "details": "PD94bWwgdmVyc2lvbj1cIjEuMFwiIGVuY29kaW5nPVwiVVRGLThcIj8+CiA8bnMwOlJlcG9ydCB4bWxuczpuczA9XCJodHRwOi8vd3d3LmtoaXNrby5jb20vdHJpVHlwZXNcIj4KICA8U3RhY2tUcmFjZT5Kb2ItODAwNCBFcnJvciBpbiBbeHh4eHh4eHh4eF0KICAgICAgT3V0cHV0IGRhdGEgaW52YWxpZCYjeEQ7CiAgYXQgY29tLnh5ei50c3QuYShVbmtub3duIFNvdXJjZSkmI3hEOwogICAgICBjYXVzZWQgYnk6IGphdmEubGFuZy5OdWxsUG9pbnRlckV4Y2VwdGlvbiYjeEQ7CiAgIDwvU3RhY2tUcmFjZT4KICAgPE1zZz5PdXRwdXQgZGF0YSBpbnZhbGlkPC9Nc2c+CiAgPC9uczA6UmVwb3J0Pg==",
    "encoding": "base64"
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 要在客户端 JavaScript 中进行编码和解码,请使用 atob() 和 btoa()。这是 MDN 文档链接:https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding (4认同)
  • 我想知道为什么这个答案没有被标记为正确答案,直到我看到它是在问题提出 6 年后发布的:) (2认同)

AIT*_*ANE 6

只是我已经改变了\",以'remove line breaks像@Explosion丸说:

{"content":{
    "name" : "xyz",
    "details":"<?xml version='1.0' encoding='UTF-8'?>
     <ns0:Report xmlns:ns0='http://www.khisko.com/triTypes'>
      <StackTrace>Job-8004 Error in [xxxxxxxxxx]
          Output data invalid&#xD;
      at com.xyz.tst.a(Unknown Source)&#xD;
          caused by: java.lang.NullPointerException&#xD;
       </StackTrace>
       <Msg>Output data invalid</Msg>
      </ns0:Report>"
     }}
Run Code Online (Sandbox Code Playgroud)


cha*_*sad 5

我不想从 XML 中删除换行符,因此我更改了处理 JSON 的 Java 类,以便不会针对换行符或回车符抛出未终止的字符串异常。