问题描述
Python下的一个脚本运行时报错,错误的提示为:
ConfigParser.MissingSectionHeaderError: File contains no section headers.
明显看到错误的原因是在ConfigParser,代码中ConfigParser是用来读取ini配置文件的。前几天用notepad++修改过一次配置文件【这里比较奇怪的是,之前修改配置文件的时候都没有遇到这个问题】。
搜了一下发现,这个问题还是一个常见问题,有很多解答。
问题原因
用ConfigParser读取配置文件的程序调用后发现文件头部被追加了信息:\xef\xbb\xbf,然后ConfigParser解析出错
\xef\xbb\xbf的出现原因:在Window下记事本、notepad++等文本编辑器编辑后,若保存为不同的编码格式会在文件开头加上BOM
UNICODE: \xFF\xFE
UTF-8:\xEF\xBB\xBF
解决方法
用notepad++将文件编码修改为以UTF-8无BOM格式编码,然后保存文件就行了。
参考:
ConfigParser读取记事本、notepad++修改后的配置文件会出现:ConfigParser.MissingSectionHeaderError
ConfigParser读取记事本修改后的配置文件出错问题解决