将具有无效XML字符的任意JSON转换为Java中的XML

时间:2014-01-27 18:52:34

标签: java xml json

背景:

  • 我正在调用JSON格式的Web API并传递它们 一种需要XML格式的数据编排工具。
  • 业务流程工具允许自定义Java过程。

问题:

  • JSON可以包含转换为XML时导致问题的元素。 例如,twitter处理@john:somevalue适用于JSON中的键 但是当转换为XML< @ john> somevalue会导致 编排工具以抛出错误。
  • 我正在使用经常更改的各种Web API。我需要 能够将任意JSON转换为XML,几乎不需要维护。

到目前为止的研究:

  • 我发现了几种在Java中将JSON转换为XML的方法,但其中很多都是针对固定的输入结构。
  • 这个StackOverflow post似乎就像我想要的那样,但我遇到了让它运转起来并追查所需的所有JAR的问题。
  • 我见过一些图书馆会为&,<,>,'和“做一些基本的字符转义。是否有一个更强大的?

1 个答案:

答案 0 :(得分:2)

我最终反序列化JSON并遍历数据,使用以下正则表达式查找节点,然后删除或替换非拉丁字符。

抓取JSON节点的正则表达式

"(.*?)":