python中JSON转XML文件
# 接收前台给的json数据
jsonData = json.loads(request.POST.get("jsonData"));
# 接收前台的类型(根据类型转出3个不同的文件)
type = json.loads(request.POST.get("type"));
# 最后转出的xml数据
xmlData = None
#判断类型
if type == 1:
# 设置xml结构json
xmlData = {
"rootNodeXml":{ # xml根节点
"childNodeXml":jsonData # rootNodeXml的多个子节点childNodeXml jsonData中的数据是childNodeXml的子节点
}
}
elif type == 2:
# 设置xml结构json
xmlData = {
"rootNodeXml":{ # 根节点
"configureNode":jsonData["configureNode"] # 子节点
"informationNode":jsonData["informationNode"] # 子节点
}
}
elif type == 3:
# 设置xml结构json
xmlData = {
"rootNodeXml":{ # 根节点
"information":jsonData["information"] # 子节点
"configure":jsonData["configure"] # 子节点
"data":jsonData["data"] # 子节点
"other":jsonData["other"] # 子节点
}
}
if xmlData:
# unpares需要引入 pretty 格式化XML
xmlData = unpares(xmlData, full_document=False, encoding="utf-8", pretty=True)
print(xmlData)
# 将值给输入到文件就可以
1.type是1时输入josn
"jsonData" = [
{"name":"李敏","age":12},
{"name":"李明","age":18},
{"name":"小红","age":11},
{"name":"哈哈","age":108}
],
"type":1
输出xml为
李敏
12
李明
18
小红
11
哈哈
108
2.type是2时输入json
"jsonData" = {
"configureNode" = [
{"interval":10,"time":12,"addressIp":"127.0.0.1"}
],
"informationNode" = [
{"name":"李敏","age":12},
{"name":"李明","age":18},
{"name":"小红","age":11},
{"name":"哈哈","age":108}
]
},
"type":2
输出xml为
10
127.0.0.1
李敏
12
李明
18
小红
11
哈哈
108
3.当type为3时,会输出4个不同的xml列表