RawConfigParserを使用して、複数のファイルを 1 つにマージするために、セクションとオプションと値をある.ini
ファイルから別のファイルにコピーしています。.ini
あるソース.ini
にはこれがあり、コピーしたいと思います:
[foo]
bar=""
しかし、私が得た結果は
[foo]
bar=
私がテストした閉じた外部プログラムはこのiniでは動作しないため、これは私の要件を満たしていません。
'""'
、\"\"
で試しました"\"\""
が、成功しませんでした。(編集:出力で''
は私にとっても何の役にも立たないことに注意してください。そうする必要があります""
)
私のコードは次のとおりです。
import ConfigParser
inireader = ConfigParser.RawConfigParser()
inireader.read('source.ini')
iniwriter=ConfigParser.RawConfigParser()
for section_name in inireader.sections():
for name, value in inireader.items(section_name):
print name,value
if not iniwriter.has_section(section_name):
iniwriter.add_section(section_name)
iniwriter.set(section_name, name, value)
with open("output.ini", "wb") as f:
iniwriter.write(f)
if value == "": iniwriter.set(section_name,name,'""')
動作しますが、これはバグですか?それとも私は何か間違ったことをしていますか?これを行うための非ハックな方法はありますか?
編集:私はPython 2.7を使用しています