如何将完整的 JSON 格式转换为 XML

时间:2021-02-04 06:56:33

标签: python json xml

如果我有以下代码并想转换为 XML: 注意:我尝试使用 json2xml,但它不会转换完整的集合,而只是转换其中的一部分。

from json2xml import json2xml
from json2xml.utils import readfromurl, readfromstring, readfromjson

data = readfromstring(string)
print(json2xml.Json2xml(data).to_xml()

是否有任何 Python 库或专用代码可以做到这一点?

我尝试构建自定义函数来解决这个问题并将它们全部转换,但是,我陷入了这个问题。 这里的用例是上面输入的代码,输出应该是任何在线转换器生成的代码

编辑:

    {
  "record": {
    "model": "ir.ui.view",
    "id": "address_tree_view",
    "field": [
      {
        "name": "name",
        "#text": "address.tree.view"
      },
      {
        "name": "model",
        "#text": "address"
      },
      {
        "name": "priority",
        "eval": "16"
      },
      {
        "name": "arch",
        "type": "xml",
        "tree": {
          "string": "Address",
          "field": [
            {
              "name": "text_address"
            },
            {
              "name": "address_line1"
            },
            {
              "name": "country_id"
            },
            {
              "name": "state_id"
            },
            {
              "name": "address_district"
            },
            {
              "name": "address_city"
            },
            {
              "name": "address_postal_code"
            }
          ]
        }
      }
    ]
  }
}

上面的代码只是将下面代码中的一部分json转换成xml:

X

PS:我使用过在线转换器,但我不想在这里这样做。

2 个答案:

答案 0 :(得分:1)

尝试dicttoxml

如果您从 JSON 文件中检索数据

import json
import dicttoxml

with open("file_name.json", "r") as j:
    data = json.load(j);

xml = dicttoxml.dicttoxml(data)
print(xml)

答案 1 :(得分:1)

使用 dicttoxml 将 JSON 直接转换为 XML

安装 pip 安装 dicttoxml 要么 easy_install dicttoxml

<View
  style={{
    borderWidth: 1,
    borderRadius: 5,
    borderColor: '#0095ff87',
  }}>
 <Picker style = { styles.coloring}>
     <Picker.Item label="Java" value="java" />
     <Picker.Item label="JavaScript" value="js" />
 </Picker>
</View>

欲了解更多信息,请查看 here