python中JSON转XML文件

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列表

你可能感兴趣的:(python,python)