2
我在Python中使用minidom(其中包括)從目錄中拉取文件列表,獲取其修改時間,其他雜項。數據,然後將該數據寫入XML文件。數據打印很好,但是當我嘗試將數據寫入文件時,我只能獲取目錄中某個文件的XML。這裏是我的代碼(我已刪除的createElement
和appendChild
方法一個良好的金額以及爲可讀性/空間着想任何非相關變量):寫入XML文件 - 基於變量的多個標籤
for filename in os.listdir((os.path.join('\\\\10.10.10.80\Jobs\success'))):
doc = Document()
modTime = datetime.datetime.fromtimestamp(os.path.getmtime('\\\\10.10.10.80\Jobs\success\\'+filename)).strftime('%I:%M:%S %p')
done = doc.createElement('Printed Orders')
doc.appendChild(done)
ordernum = doc.createElement(filename)
done.appendChild(ordernum)
#This is where other child elements have been removed
print doc.toprettyxml(indent=' ')
xmlData = open(day_path, 'w')
xmlData.write(doc.toprettyxml(indent=' '))
希望這足以看出這是怎麼回事。由於print
返回了我期望的值,我認爲寫函數是我出錯的地方。
這是我的意圖,外面包含所有數據的一個單一的文件(Ultimatel y它會每天創建一個文件)我嘗試了你的建議,但是輸出文件仍然只包含'os.listdir'中的一個文件的XML。最重要的是,'print'也只返回一個文件,其中就像之前它把所有的人都歸還了。另外,在循環外部移動'doc = Document()'會返回錯誤:'HierarchyRequestErr:兩個不允許的文檔元素' –
下次創建一個自己的內容示例以便我們可以輕鬆地進行測試 –
謝謝@Xavier Combelle在移動創建根元素一切正常。下次我會確保提供一個更友好的測試例子。 –