2016-08-05 75 views
1

我的Java应用程序使用XML输入,并使用简单框架对其进行解析。我希望它也接受JSON,因此我想将JSON转换为XML。如何将Badgerfish风格的JSON转换为Java中的XML?

标签和属性很重要,因此我使用Badgerfish约定。 这与Python的xmljson很好,但我找不到一个体面的包来做到这一点。 GSON似乎没有Badgerfish的实施。 This主题不提供任何标签/属性保留包,该主题也有点旧。

哪些Java包可以将JSON转换为XML,同时将标记/属性置于正确的位置?

建议的替代方法比Badgerfish亦欢迎...

提前非常感谢!

回答

1

您可以使用XPath 3.1 json-to-xml()函数,然后对生成的XML执行XSLT转换,将其转换为您需要的格式。

+0

感谢您的建议!我一直在尝试和搜索很多,但我无法弄清楚哪个包实现了这些功能。还是它在标准的Java库中实现? 说实话:我对Java很陌生... –

+0

XPath 3.1在最近版本的Saxon以及其他一些库如BaseX中实现。 –

+0

请注意,据我所见,Badgerfish致力于确保每个XML文档都有一个定义的JSON表示。 XPath转换函数专注于确保对于每个JSON文档都有一个定义的XML表示。这意味着对于Badgerfish约定,将会有不转换为XML的JSON文档(例如带有空格的“{”名称:“true()}”,而在XPath约定中,将会有XML文档“所以这两个适合于不同的目的 –