您的位置:首页 > 编程语言 > Python开发

利用Python进行CSV转XML

2014-11-27 10:05 405 查看
#!/usr/bin/python

#CSVtoXML.py

#encoding:utf-8
import csv, os
from xml.dom.minidom import Document

#prfixFile = "creature_data"

def createXMLFile(filePrefix):
csvFile = open(filePrefix+'.csv');
headLine = csvFile.readline()
#print headLine
typeList = headLine.split(',')

doc = Document()
dataRoot = doc.createElement(filePrefix+'List')
dataRoot.setAttribute('xmlns:xsi', "http://www.w3.org/2001/XMLSchema-instance")
dataRoot.setAttribute('xsi:schemaLocation', filePrefix+'.xsd')
doc.appendChild(dataRoot)

csvReader = csv.reader(csvFile)
for line in csvReader:
#print line
dataElt = doc.createElement(filePrefix)
for i in range(len(typeList)):
dataElt.setAttribute(typeList[i], line[i])
dataRoot.appendChild(dataElt)

xmlFile = open(filePrefix+'.xml','w')
xmlFile.write(doc.toprettyxml(indent = '\t'))
xmlFile.close()

def main():
for root, dirs, files in os.walk(os.getcwd()):
for fname in files:
index = fname.find('.csv')
if index > 0:
#print index, fname[:index]
createXMLFile(fname[:index])
print "Transform " + fname + " OK!"

if __name__ == '__main__':
main()
input("Game Over!")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: