我想製作一個命令行程序,希望可以在Windows和Linux上工作。我想使用Python,因爲它是我選擇的編程語言。目標是讓程序以文件名作爲參數,並以不同格式輸出文件中的信息。在這種情況下,XML - > CSV和CSV - > XML。XML CSV與Python轉換
這樣做的最好方法是什麼?
我知道Python中有XML和CSV解析器,如xml.parsers.expat
和csv
庫。我希望程序是健壯的,以便它可以輸出其他格式,如.sql或其他格式。首先將數據轉換爲標準格式會有好處嗎?像JSON一樣?然後可以將輸出文件製作成必要的其他格式。
謝謝。
編輯::
<level1 id ='' attr1='' attr2=''>
<level2 id ='' attr1='' attr2=''>
<type1 id ='' attr1='' attr2=''>
</type1>
<type2 id ='' attr1='' attr2=''>
</type2>
</level2>
<level2 id ='' attr1='' attr2=''>
<type2 id ='' attr1='' attr2=''>
</type2>
</level2>
</level1>
這是XML格式。注意level2中的type1和type2。現在我應該如何在csv中逐行表示這一行?
編輯#2:
我想這個問題歸結爲一個樹狀的數據結構和網格結構之間進行轉換的標準方法。我最終在python中創建了一個嵌套列表,例如JSON,但沒有使用JSON結構。我想知道是否有一個好的算法來進行這種轉換?
XML是一種非常靈活的格式,所以如何做到這一點取決於您的XML格式以及您想要的信息。 –
您應該更清楚地說明您希望處理的文件類型。例如:XML用於表示樹,而CSV表...您的文件是否將包含具有相同長度分支的樹或...? – mac
是的csv和xml文件之間的差異使它有點棘手。 xml文件是樹形格式的,請參閱我上面編輯的xml和csv格式。 –