使用xmltodict从python中的xml文件创建json文件

Roc*_*Kid 3 python xml json xmltodict

我试图使用xmltodict从输入xml文件创建一个json文件,代码如下

import io, xmltodict, json
infile = io.open(filename_xml, 'r')
outfile = io.open(filename_json, 'w')
o = xmltodict.parse( infile.read() )
json.dump( o , outfile )
Run Code Online (Sandbox Code Playgroud)

最后一行给我带来以下错误

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/__init__.py", line 182, in dump
    fp.write(chunk)
TypeError: must be unicode, not str
Run Code Online (Sandbox Code Playgroud)

我想我需要改变编码.我的初始xml文件似乎是ascii.有关如何使这项工作的任何想法?谢谢

Ola*_*che 5

您可以以二进制模式打开文件

outfile = io.open(filename_json, 'wb')
Run Code Online (Sandbox Code Playgroud)

str也是允许的.