场景:在使用了mask rcnn跑实验后标注了大量地json格式文件,现在打算使用yolo和faster rcnn 跑实验 所以需要将之前地json文件转为xml

      但是找了很久,没发现有批量处理的代码,所以自己写了一个,经测可用。

使用方法:将我代码拷贝入一个python文件中;修改34和35行对应参数json_path和xml_path,分别代表要转的json文件主目录(有json文件的上一级目录)和xml文件存放目录

ps:前面加r是表示取消转义符  下附代码 ====

 # --------------------------------------------------------
# Written by JianFeng Liu, based on python
# json file transform to xml file automatically
# --------------------------------------------------------
import xmltodict
import json
import os # json to xml
def jsonToXml(json_str):
try:
xml_str=""
xml_str = xmltodict.unparse(json_str, encoding='utf-8')
except:
xml_str = xmltodict.unparse({'request': json_str}, encoding='utf-8')
finally:
return xml_str def json_to_xml(json_path,xml_path):
if(os.path.exists(xml_path)==False):
os.makedirs(xml_path)
dir = os.listdir(json_path)
for file in dir:
file_list=file.split(".")
with open(os.path.join(json_path,file), 'r') as load_f:
load_dict = json.load(load_f)
json_result = jsonToXml(load_dict)
f = open(os.path.join(xml_path,file_list[0]+".xml"), 'w', encoding="UTF-8")
f.write(json_result)
f.close() if __name__ == '__main__': json_path=r"G:\jianfeng\project\rubblish_det\source\train_pic_json\111" #该目录为存放json文件的路径 ps:目录中只能存放json文件
xml_path=r"G:\jianfeng\project\rubblish_det\source\train_pic_json\222" #该目录为放xml文件的路径
json_to_xml(json_path,xml_path)

python批量json文件转xml文件脚本(附代码)的更多相关文章

  1. web端自动化——Python读取txt文件、csv文件、xml文件

    1.读取txt文件 txt文件是我们经常操作的文件类型,Python提供了以下几种读取txt文件的方式. 1)read(): 读取整个文件. 2)readline(): 读取一行数据. 3)readl ...

  2. python中用ElementTree.iterparse()读取xml文件中的多层节点

    我在使用Python解析比较大型的xml文件时,为了提高效率,决定使用iterparse()方法,但是发现根据网上的例子:每次if event == 'end':之后elem.clear()或者是每次 ...

  3. Python批量复制和重命名文件

    Python批量复制和重命名文件 示例代码 #! /usr/bin/env python # coding=utf-8 import os import shutil import time impo ...

  4. Python批量修改Excel中的文件内容

    import osimport xlrdfrom xlutils.copy import copydef base_dir(filename=None):    return os.path.join ...

  5. LINQ to XML 从逗号分隔值 (CSV) 文件生成 XML 文件

    参考:http://msdn.microsoft.com/zh-cn/library/bb387090.aspx 本示例演示如何使用 语言集成查询 (LINQ) 和 LINQ to XML 从逗号分隔 ...

  6. schema文件及XML文件的DOM和Sax解析

    schema文件 <?xml version="1.0" encoding="UTF-8"?> <schema xmlns="htt ...

  7. 关于跨域策略文件crossdomain.xml文件

    下载flexpaper源码修改后做成swf阅读器,要加入待阅读的swf文件,可以在flex里调用js的方法来获取swf文件的路径的方法,在js只专注获取路径就行,等着flex来调用:但这里会遇到一个问 ...

  8. Python处理json格式的数据文件(一些坑、一些疑惑)

    这里主要说最近遇到的一个问题,不过目前只是换了一种思路先解决了,脑子里仍然有疑惑,只能怪自己太菜. 最近要把以前爬的数据用一下了,先简单的过滤一下,以前用scrapy存数据的时候为了省事也为了用一下它 ...

  9. json串转化成xml文件、xml文件转换成json串

    1.json串转化成xml文件 p=[{"name":"tom","age":30,"sex":"男" ...

随机推荐

  1. Shadow Map(单方向)

    很早就想看阴影映射,一直拖到了现在,今天终于看了单方向的阴影映射,然后搭了个场景看了一下效果(每次搭场景感觉有点麻烦). 阴影映射的大体过程: // 1. 首选渲染深度贴图 glViewport(, ...

  2. 断点调试debugger

    断点调试有两种打点方式 (1)控制台手动打点 (2)代码中添加 debugger打点 .

  3. 如何使用postman判断返回结果是否正确

    针对一个接口,我们在知道参数以及参数对应的结果时,可以通过postman进行判断,验证返回数据是否与预期数据相等.这样可以使我们的接口测试更加的方便简洁. 1.准备数据. postman可以接受的文件 ...

  4. Leetcode 1239. 串联字符串的最大长度

    地址 https://leetcode-cn.com/problems/maximum-length-of-a-concatenated-string-with-unique-characters/s ...

  5. jinja2模板用法

    我不是代码的生产者,我只是知识的搬运工 jinja2模板用法

  6. 自动编写Python程序的神器,Python 之父都发声力挺!

    ​ 就在不久前,kite——那个能够自己编写python代码的AI,Python 之父 Guido van Rossum 使用之后,也发出了「really love」感叹,向大家墙裂推荐了这一高效工具 ...

  7. 分析FAT32内部结构-入门篇-

    FAT32(File Allocation Table)是一种32位的FAT文件系统,微软在1996年8月发布. FAT32的数字32是下面会讲到的FAT中每个表项的长度. 磁盘(硬盘)是数据的载体, ...

  8. C++入门到理解阶段二基础篇(3)——C++数据类型

    目录 1.数据类型概述 2.基本的内置类型 整型 实型(浮点型) 字符型 转义字符 字符串型 c风格的字符串 c++风格的字符串 布尔类型bool 1.数据类型概述 使用编程语言进行编程时,需要用到各 ...

  9. jQuery 源码分析(十九) DOM遍历模块详解

    jQuery的DOM遍历模块对DOM模型的原生属性parentNode.childNodes.firstChild.lastChild.previousSibling.nextSibling进行了封装 ...

  10. elasticsearch 索引的使用(配合haystack)

    1,# 从仓库拉取镜像$ sudo docker image pull delron/elasticsearch-ik:2.4.6-1.02,下载elasticsearc-2.4.6目录拷贝到home ...