pythonxml+javaxml互操作性

2024-10-03 17:16:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要一个pythonic库的推荐,它可以将python对象marshall转换为XML(让它成为一个文件)。 我需要能够在以后使用Java(JAXB)读取XML并对其进行解组。 我知道JAXB有一些问题,这使得它不能很好地使用.NETXML库,所以建议一些实际可行的东西。在


Tags: 文件对象xmljavapythonic建议marshalljaxb
2条回答

您可能遇到的问题是用于封送对象的Python和Java库的默认格式。任何像样的库,包括如何用XML表示对象的JAXB allows customisation。在

您需要决定XML的结构,然后使用库特性来使用和发出XML结构,而不是依赖于默认值,这些默认值在不同编程语言的不同库中永远不会相同。在

正如Ignacio所说,XML就是XML。在python方面,我建议使用lxml,除非您有更具体的需要,而其他库可以更好地满足这些需求。如果您被限制在标准库中,那么看看ElementTree或{},它们也非常优秀,并且激发了(并且在功能上主要等同于)lxml.etree。在

编辑:仔细观察,您似乎不仅仅在寻找XML,而是在寻找对象的XML表示。为此,请查看lxml.objectify,或Amara。我还没有尝试使用它们来实现与Java的互操作性,但它们值得一试。如果您只是在寻找一种进行数据交换的方法,那么也可以尝试自定义JSON对象。在

相关问题 更多 >