私はこれをやろうとした
import xml.etree.ElementTree as ET
root = ET.Element('xml')
projects = ["a", "e", "u"]
for i in projects:
project = ET.SubElement(root,'project')
project.set('name', i)
designs = ["a", "e", "u"]
for u in designs:
design = ET.SubElement(project,'design')
design.set('name', u)
vars = ["a", "e", "u"]
for z in vars:
param = ET.SubElement(design,'param')
param.set('name', z)
value = ET.SubElement(param,'value')
value.text = "var"
tree = ET.ElementTree(root)
tree.write('projects.xml')
ipy.exe で実行すると、正常に動作しますが、別のプログラムのスクリプト インターフェイスから実行する必要があります。スクリプト インターフェイスは、.NET 2.0.50727.5466 で IronPython 2.6.10920.0 を使用します。エラーなく実行されますが、作成されるファイルは常に空です。上記のファイルを削除しようとすると、プログラムでまだ開いていると表示されます。xml ファイルを解放するコマンドはありますか、それとも何か見落としていますか?
更新:スクリプトの実行後に問題のプログラムを閉じると、xml ファイルが正常に作成されます
更新: このような単純なファイルライターは完全に機能します
f = open("pythontest.txt", "w")
projects = ["a", "e", "u"]
for i in projects:
f.write("Name: " + i)
f.close()