今天使用ConfigParser解析一个ini文件,报出如下错误:

ConfigParser.MissingSectionHeaderError: File contains no section headers.
    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'
ConfigParser.MissingSectionHeaderError: File contains no section headers.

经过分析是由于文件编码方式导致,调整代码如下,问题解决:

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

相关文章:

  • 2022-12-23
  • 2021-07-21
  • 2022-12-23
  • 2021-12-07
  • 2021-06-03
  • 2021-12-04
  • 2021-12-05
  • 2021-12-17
猜你喜欢
  • 2021-08-11
  • 2021-04-07
  • 2021-08-28
  • 2021-09-09
  • 2021-08-17
  • 2022-12-23
  • 2022-01-18
相关资源
相似解决方案