

2
3 def createDocument(strContentName, strDeveloper, strFile, strOutputFile):
4 doc = minidom.Document()
5
6 #Create slim
7 slim = doc.createElement("slim")
8 slim.setAttribute("slimEd", "1.0")
9 slim.setAttribute("xmlns", "www.sap.com/slim")
10
11 #Create header
12 header = doc.createElement("header")
13
14 #Create locale
15 locale = doc.createElement("locale")
16
17 #Create develLc
18 develLc = doc.createElement("develLc")
19 develLc.appendChild(doc.createTextNode("en++"))
20
21 #Create contentLc
22 contentLc = doc.createElement("contentLc")
23 contentLc.appendChild(doc.createTextNode("en++"))
24
25 locale.appendChild(develLc)
26 locale.appendChild(contentLc)
27
28 header.appendChild(locale)
29
30 #objType
31 objType = doc.createElement("objType")
32 objType.appendChild(doc.createTextNode("line"))
33 header.appendChild(objType)
34
35 #collection
36 collection = doc.createElement("collection")
37 collection.appendChild(doc.createTextNode("BUSMB_SBO_iPhone_10"))
38 header.appendChild(collection)
39
40 #domain
41 domain = doc.createElement("domain")
42 domain.appendChild(doc.createTextNode("FI"))
43 header.appendChild(domain)
44
45 #contentName
46 contentName = doc.createElement("contentName")
47 contentName.appendChild(doc.createTextNode(strContentName))
48 header.appendChild(contentName)
49
50 #defaults
51 defaults = doc.createElement("defaults")
52
53 #maxL
54 maxL = doc.createElement("maxL")
55 maxL.appendChild(doc.createTextNode("255"))
56 defaults.appendChild(maxL)
57 header.appendChild(defaults)
58
59 #workflow
60 workflow = doc.createElement("workflow")
61
62 #contacts
63 contacts = doc.createElement("contacts")
64
65 #developer
66 developer = doc.createElement("developer")
67 developer.appendChild(doc.createTextNode(strDeveloper))
68 contacts.appendChild(developer)
69 workflow.appendChild(contacts)
70 header.appendChild(workflow)
71
72 #asd
73 asd = doc.createElement("asd")
74 header.appendChild(asd)
75
76 slim.appendChild(header)
77
78 #body
79 body = doc.createElement("body")
80
81 #loGrp
82 loGrp = doc.createElement("loGrp")
83 loGrp.setAttribute("grpClass", "textType")
84 loGrp.setAttribute("grpName", "XTXT")
85
86 input = open(strFile, 'r')
87 for line in input.readlines():
88 if(line.find('"') != -1):
89 parseLine(doc, loGrp, line)
90
91 body.appendChild(loGrp)
92 slim.appendChild(body)
93
94 output = open(strOutputFile, 'w')
95 slim.writexml(output)
96
97 def createItem(doc, loGrp, strtk, strmaxL, strText):
98 #lo
99 lo = doc.createElement("lo")
100 lo.setAttribute("tK", strtk)
101 lo.setAttribute("maxL", strmaxL)
102
103 #loC
104 loC = doc.createElement("loC")
105 loC.appendChild(doc.createTextNode(strText))
106 lo.appendChild(loC)
107 loGrp.appendChild(lo)
108
109 def parseLine(doc, loGrp, line):
110 keystart = line.find('"')
111 keyend = line.find('"', keystart+1)
112 key = line[keystart : keyend]
113
114 valuestart = line.find('=') + 2
115 valueend = line.rfind('"')
116 value = line[valuestart : valueend] + ";"
117
118 if(key.find('#') != -1):
119 length = line[line.find('#')+1 : keyend]
120 #key = line[keystart : line.find('#')-2]
121 else:
122 length = "255"
123 createItem(doc, loGrp, key, length, value)
124
125 if __name__ == "__main__":
126 createDocument("BUSMB_SBO_iPhone_Setting_10", "000", "C:\Settings.strings", "C:\iphone_setting.xml")
127 createDocument("BUSMB_SBO_iPhone_Main_10", "000", "C:\main.strings", "C:\iphone_main.xml")
128
a94762662e74 9 月前
dd9fd3603633 9 月前