【问题标题】:How to convert XML to JSON in Java excluding some tags?java - 如何在Java中将XML转换为JSON,不包括一些标签?
【发布时间】:2017-02-06 13:18:51
【问题描述】:

我想在 Java 中将 XML 转换为 JSON,但大多数答案都集中在将 XML 中的所有标签转换为 JSON。但我的要求是跳过一些标签并将剩余的标签转换为 JSON。任何帮助都是不言而喻的。

我尝试了org.json 包中的XML.toJSONObject(String); 方法,但它没有建议任何跳过某些标签的方法。

【问题讨论】:

  • 这个问题太不清楚,无法给出有用的答案 - 所以:通过 jaxb 将您的 xml 加载到您的域对象中,然后例如通过 gson 到 json
  • 如果该方法没有提供类似的东西,您可以轻松地自己实现它:要么将整个 XML 加载到内存中并使用 DOM 删除不必要的元素和属性,要么使用 SAX 编写一个过滤阅读器,然后直接输出到 JSON 编写器。
  • 但这会消耗大量内存和时间,因为我的 xml 几乎有超过 50k 个标签。有没有其他方法可以做到这一点。
  • 你能解决这个问题吗?我也有同样的问题。

标签: java json jackson gson org.json


【解决方案1】:

如果您使用 gson,只需在 com.google.gson 下的 JsonObject 中使用 remove api

假设我们在您的模型中有您不想显示的测试属性,

      JsonObject jsonObj;
      jsonObj.remove("test");

您将拥有没有 test 属性的 json 对象。

【讨论】:

  • 您的方式建议在将完整的 xml 转换为 json 后从 JSON 中删除密钥但我不想将完整的 xml 转换为 json(在转换过程中我想跳过一些标签)
猜你喜欢
  • 2019-02-17
  • 1970-01-01
  • 1970-01-01
  • 2013-11-27
  • 2013-06-01
  • 1970-01-01
  • 2017-11-01
  • 2013-08-23
相关资源
最近更新 更多