blob: e0b4cddbd8ad8cb57cec39b0c746610d9f61b8e9 [file] [log] [blame]
#-*- coding: utf-8
import fileinput
import os
def parse_config_file(config_file, configs, encoding='utf-8'):
if not os.path.exists(config_file):
print u"Config file <{0}> not exists".format(config_file)
return False
if isinstance(config_file, str):
config_file = config_file.decode(encoding)
lineno = 0
for line in fileinput.input(config_file):
lineno += 1
line = line.strip(' ').rstrip('\n').rstrip('\r')
line = line.decode(encoding)
if not line:
continue
if line.startswith('#'):
# is comment
continue
cfg = line.partition('=')
if not cfg[1]:
raise ValueError(u"Config file line %d error" % lineno)
configs[cfg[0].strip(' ')] = cfg[2].lstrip(' ')
return True