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

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

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

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

 1 # --------------------------------------------------------
 2 # Written by JianFeng Liu, based on python
 3 # json file transform to xml file automatically
 4 # --------------------------------------------------------
 5 import xmltodict
 6 import json
 7 import os
 8
 9 # json to xml
10 def jsonToXml(json_str):
11     try:
12         xml_str=""
13         xml_str = xmltodict.unparse(json_str, encoding='utf-8')
14     except:
15         xml_str = xmltodict.unparse({'request': json_str}, encoding='utf-8')
16     finally:
17         return xml_str
18
19 def json_to_xml(json_path,xml_path):
20     if(os.path.exists(xml_path)==False):
21         os.makedirs(xml_path)
22     dir = os.listdir(json_path)
23     for file in dir:
24         file_list=file.split(".")
25         with open(os.path.join(json_path,file), 'r') as load_f:
26             load_dict = json.load(load_f)
27         json_result = jsonToXml(load_dict)
28         f = open(os.path.join(xml_path,file_list[0]+".xml"), 'w', encoding="UTF-8")
29         f.write(json_result)
30         f.close()
31
32 if __name__ == '__main__':
33
34     json_path=r"G:\jianfeng\project\rubblish_det\source\train_pic_json\111"  #该目录为存放json文件的路径  ps:目录中只能存放json文件
35     xml_path=r"G:\jianfeng\project\rubblish_det\source\train_pic_json\222"   #该目录为放xml文件的路径
36     json_to_xml(json_path,xml_path)

转载于:https://www.cnblogs.com/bob-jianfeng/p/11122135.html

python批量json文件转xml文件脚本(附代码)相关推荐

  1. 使用Python批量替换指定目录所有文件中的指定文本

    使用Python批量替换指定目录所有文件中的指定文本 # -*- coding: utf-8 -*- import os from = "aaa" #替换为什么内容,可以是多行 t ...

  2. python文本筛选多个word_用Python批量替换多个Word文件中的文字

    实例14:用Python批量替换多个Word文件中的文字 公众号"Python操作Office软件高效工作" 29 人赞同了该文章 我们在实例7中批量生成了采购合同.但是假设现在我 ...

  3. 【Python】识别.yaml/.ini/.xml文件

    文章目录 一.[Python]识别.yaml/.ini/.xml文件: 1.1.模块的安装: 1.2..yaml文件读取: 1.3.yaml文件写入: 1.4.yaml文件更新操作: 1.5..ini ...

  4. word批量替换多组文字 python_实例14:用Python批量替换多个Word文件中的文字

    我们在实例7中批量生成了采购合同.但是假设现在我方的公司名由"ABC商贸有限公司"变成了"ABC贸易有限公司",那我们就需要去每份合同中对应位置进行替换.当然也 ...

  5. GDCM:将DICOM文件和XML文件相互转换的测试程序

    GDCM:将DICOM文件和XML文件相互转换 GDCM:将DICOM文件和XML文件相互转换 GDCM:将DICOM文件和XML文件相互转换 #include "gdcmFilename. ...

  6. java文件和xml文件_用Java分割大型XML文件

    java文件和xml文件 上周,我被要求用Java编写一些东西,该东西能够将一个30GB的XML文件拆分为可配置文件大小的较小部分. 文件的使用者将是一个中间件应用程序,该应用程序在XML的大尺寸方面 ...

  7. 比赛中学习(2)-voc数据集制作中将.txt文件变为.xml文件

    描述 和voc数据集制作有一点不同的是,因为参加的比赛中坐标给了4个,也就是说目标的形状可能是是平行四边形.所以和voc数据集有点不同啊.放出一张.txt文件的形式 最后的结果大致是这样的(和上面的图 ...

  8. (C++)将数据库文件导出XML文件以及解析XML文件生成数据库文件的处理方法

    将数据库文件导出XML文件以及解析XML文件生成数据库文件的处理方法 思路:将数据库所有要导出的信息通过sql语句得到,存储到结构体中,然后将结构体的内容通过自定义的xml格式导出. 此方法使用的是T ...

  9. sumo路由文件(.rou.xml文件)的生成以及关于生成交通流的一些方法

    1. 首先准备好一个构建的路网(.net.xml)文件 这里我所利用的一个路网构造如下: 2. 路由文件(.rou.xml)文件 可以在netedit里边对路网个各个道路边缘id长度以及相关参数进行配 ...

  10. 安卓开发的java文件与xml文件

    安卓开发新建Activity时创建的java文件和xml文件 作用: Android布局以xml形式写在res/layout文件夹中,这样不光可以将将前台界面与业务逻辑区分开,让代码更加清晰,将这些控 ...

最新文章

  1. 分享我的第一个asp.net core开发过程
  2. 大数据数据库技术简介与分类分析
  3. 3500 yuan to php,350 CNY to PHP Currency Converter - 人民币 菲律宾比索 汇率兑换
  4. sql:数据操作语言dml
  5. 2015-2020年各类国际会议与期刊基于图像的三维对象重建论文综述(7)——Datasets
  6. 痞子衡嵌入式:ARM Cortex-M文件那些事(1)- 源文件(.c/.h/.s)
  7. Office在线预览
  8. Python案例1—人民币与美元的汇率兑换V_9.0(已完结)
  9. 从零开始的单片机学习(二)
  10. VirtualBox Guest Additions installation
  11. 已 树莓派4b ros 系统 网盘_树莓派推出8GB内存版4B 搭载64位操作系统
  12. excel怎么固定住一行和一列
  13. html人物属性代码,辐射4初始人物超强属性代码一览
  14. web快速入门之基础篇-js:3_3、简易购物车
  15. 关于四川华图省考面试 1:1职位保护的承诺函
  16. 未压缩视频数据计算方式
  17. jupyter学习记录(一)——安装模块与导入图片
  18. 18天精读掌握《费曼物理学讲义卷一》 第14天 2019/6/30
  19. Linux内存管理之kmalloc、malloc、vmalloc的区别
  20. 如何实现消息功能_如何实现变频器一拖二甚至一拖多功能?

热门文章

  1. Leetcode题库191.位1的个数(C实现)
  2. [攻防世界 pwn]——cgpwn2
  3. 关于Renderscript的理解
  4. 关于定义视频播放器的界面的相关的类transPortcontroll等
  5. 数据仓库之 ETL漫谈
  6. Rating Methodology – Bank Loan / Facility Rating(CRISL)
  7. 我的第一次博客 张学良
  8. JDBC连接数据库及其执行操作
  9. 关于form组件的补充-------formChoice
  10. Mac升级到EI Captain之后pip install 无法使用问题