gpt4 book ai didi

java - 为什么在转换为 XML 时对 JSON 内容属性进行特殊处理?

转载 作者:数据小太阳 更新时间:2023-10-29 02:44:01 26 4
gpt4 key购买 nike

我正在使用 org.json 库中可用的转换函数将 json 转换为 xml。这样做非常简单。

String xmlStr = XML.toString(new JSONObject(jsonStr));

一切都很完美,直到我需要像这样处理一些包含内容属性的 json。

{
"content": "X",
...
}

我希望它能转换成

<content>X</content>

但它会转换为没有开始和结束标记的简单 X。所以我检查了 XML.toString 的源代码并且“内容”被特殊对待。代码中的注释是这样说的。

// Emit content in body

我谷歌了一下,也找到了这个。

Content text may be placed in a "content" member

但是我找不到关于这一切的解释。目的是什么,为什么有人希望以特殊方式对待它?另外,如果您能给我指出一个很好的解释,那将非常有帮助。

最佳答案

这似乎不是最佳实现决策。最近的讨论发生在 org.json 问题 #394 :

"content" is an unfortunately-named keyword in the XML <-> Java transformation. For the history of this issue, please see #344, #286, and #108. For more information about how the keyword works, see XMLTest.java contentOperations() in https://github.com/stleary/JSON-Java-unit-test.

No objection if someone wants to propose a workaround along the lines of #108, or any other approach that does not break existing applications.

关于java - 为什么在转换为 XML 时对 JSON 内容属性进行特殊处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42097466/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com