Спасибо за ответы, вот что я наконец-то сделал:
- Добавьте раздел в первую строку файла свойств
- Удалите пустые строки
- Разбор с configparser
- Удалить первую строку (раздел добавлен в первый шаг)
Это фрагмент кода:
#!/usr/bin/python
...
# Add the section
subprocess.Popen(['/bin/bash','-c','sed -i \'1i [default]\' '+srcDirectory+"/*.properties"], stdout=subprocess.PIPE)
# Remove empty lines
subprocess.Popen(['/bin/bash','-c','sed -i \'s/^$/#/g' '+srcDirectory+"/*.properties"], stdout=subprocess.PIPE)
# Get all i18n files
files=glob.glob(srcDirectory+"/"+baseFileName+"_*.properties")
config = ConfigParser.ConfigParser()
for propFile in files:
...
config.read(propertyFileName)
value=config.get('default',"someproperty")
...
# Remove section
subprocess.Popen(['/bin/bash','-c','sed -i \'1d\' '+srcDirectory+"/*.properties"], stdout=subprocess.PIPE)
У меня все еще проблемы сте мультилинии, которые не начинаются с пустого места.Я просто починил их вручную, но sed мог добиться цели.