#!/usr/bin/python
#-*-?coding:gbk?-*-
#設置源文件輸出格式
import?sys
import?getopt
import?json
import?createDict
import?myConToXML
import?myConToTable
def?getRsDataToDict():
#獲取控制臺中輸入的參數,并根據參數找到源文件獲取源數據
csDict={}
try:
#通過getopt獲取參數
opts,args=getopt.getopt(sys.argv[1:],"",["output=","file=","query="])
csDict=createDict.procParam(opts,args)
return?csDict
except?getopt.GetoptError:
print?getopt.error
sys.exit()
def?collectionToJson(contentTxt):
#參數1表示python對象;參數2表示按照字典排序;參數3表示根據格式縮進顯示
jsoninfo?=?json.dumps(contentTxt,sort_keys=True,indent=2)
print?"JSON輸出:"
print?type(jsoninfo)
print?jsoninfo
if?__name__=="__main__":
#輸入參數格式為>python?test.py?output=json?file=c:\..\input.txt?query=Permission[0]
inputParm=getRsDataToDict()
if?inputParm["query"]!=None:
csDict=createDict.getQueryRs(inputParm["contentTxt"],inputParm["query"])
else:
csDict=inputParm["contentTxt"]
output=inputParm["output"]
if?output=="json":
collectionToJson(csDict)
elif?output=="xml":
path='C:\\Users\\Vincent\\Documents\\MyTest1.xml'
encod='utf8'
myConToXML.getDictToXml(csDict,path,encod)
elif?output=="table":
myConToTable.ContentToTable(csDict)