#!/usr/bin/python
#-*-coding:gbk-*-
#设置源文件输出格式
importsys
importgetopt
importjson
importcreateDict
importmyConToXML
importmyConToTable
defgetRsDataToDict():
#获取控制台中输入的参数,并根据参数找到源文件获取源数据
csDict={}
try:
#通过getopt获取参数
opts,args=getopt.getopt(sys.argv[1:],"",["output=","file=","query="])
csDict=createDict.procParam(opts,args)
returncsDict
exceptgetopt.GetoptError:
printgetopt.error
sys.exit()
defcollectionToJson(contentTxt):
#参数1表示python对象;参数2表示按照字典排序;参数3表示根据格式缩进显示
jsoninfo=json.dumps(contentTxt,sort_keys=True,indent=2)
print"JSON输出:"
printtype(jsoninfo)
printjsoninfo
if__name__=="__main__":
#输入参数格式为>pythontest.pyoutput=jsonfile=c:\..\input.txtquery=Permission[0]
inputParm=getRsDataToDict()
ifinputParm["query"]!=None:
csDict=createDict.getQueryRs(inputParm["contentTxt"],inputParm["query"])
else:
csDict=inputParm["contentTxt"]
output=inputParm["output"]
ifoutput=="json":
collectionToJson(csDict)
elifoutput=="xml":
path='C:\\Users\\Vincent\\Documents\\MyTest1.xml'
encod='utf8'
myConToXML.getDictToXml(csDict,path,encod)
elifoutput=="table":
myConToTable.ContentToTable(csDict)