enet001 2016-10-27 2968浏览量
今天使用ConfigParser解析一个ini文件,报出如下错误:
config.read(logFile) File "C:\Python26\lib\ConfigParser.py", line 286, in read self._read(fp, filename) File "C:\Python26\lib\ConfigParser.py", line 482, in _read raise MissingSectionHeaderError(fpname, lineno, line) MissingSectionHeaderError: File contains no section headers. file: C:\test\test.ini, line: 1 '\xff\xfe\r\x00\n'
经过分析是由于文件编码方式导致,调整代码如下,问题解决:
def test(): logFile = r'C:\test\test.ini' config = ConfigParser.ConfigParser() config.readfp(codecs.open(logFile, "r", "utf_16")) print config.sections()
此文件为unicode编码,所以这里填入"utf_16",如果为其他编码格式,则修改该参数。
python编码查询地址:http://docs.python.org/2/library/codecs.html?highlight=streamcodec#standard-encodings
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
集结各类场景实战经验,助你开发运维畅行无忧