为什么在Python中以二进制模式打开xml文件进行编辑?

2 投票
1 回答
570 浏览
提问于 2025-04-16 22:32

根据Pydocs的说明,

fp = file('blah.xml', 'w+b')

或者

fp = file('blah.xml', 'wb')

意味着以写入和二进制模式打开文件。不过,这里说的是一个xml文件,为什么这两位

http://www.pixelmender.com/2010/10/12/scraping-data-using-scrapy-framework/http://doc.scrapy.org/topics/exporters.html#scrapy.contrib.exporter.XmlItemExporter

在他们关于导出Scrapy项目的教程和文档中推荐这样做呢?换句话说,为什么有人会以'b'模式打开一个新的xml文件呢?

1 个回答

0

用普通的XML文件来说,这些说法是没什么道理的。在Unix系统中,二进制文件和非二进制文件没有区别。而在Windows系统中,如果你写的是非二进制文件,里面的'\n'会被转换成'\r\n'。

不过,如果你嵌入了二进制大对象(BLOB),那就会有区别,但我在你提到的网站上没有看到这些东西。

撰写回答