Delphi 7生成XML
发布时间:2020-12-15 09:56:26 所属栏目:大数据 来源:网络整理
导读:文件格式为: Day制1課U12ASSY01Wrist100902018/05/18 09:35:59Day制1課U12ASSY02Wrist101002018/05/18 09:36:01Day制1課U12ASSY03Wrist101102018/05/18 09:36:03Day制1課U12ASSY04Wrist101202018/05/18 09:36:05Day制1課U12ASSY05Wrist101302018/05/18 09:3
文件格式为: Day 制1課 U12 ASSY01 Wrist 1009 0 2018/05/18 09:35:59 Day 制1課 U12 ASSY02 Wrist 1010 0 2018/05/18 09:36:01 Day 制1課 U12 ASSY03 Wrist 1011 0 2018/05/18 09:36:03 Day 制1課 U12 ASSY04 Wrist 1012 0 2018/05/18 09:36:05 Day 制1課 U12 ASSY05 Wrist 1013 0 2018/05/18 09:36:07 Day 制1課 U12 ASSY06 Wrist 1014 0 2018/05/18 09:36:10 Day 制1課 U12 ASSY07 Wrist 1015 0 2018/05/18 09:36:12 Day 制1課 U12 ASSY08 Wrist 1016 0 2018/05/18 09:36:14 Day 制1課 U12 ASSY09 Wrist 1017 0 2018/05/18 09:36:16 2.把此文件转成XML(用Delphi7): procedure TForm1.Button1Click(Sender: TObject); var lst,lstfield :TStringList; xml:TXMLDocument; node :IXMLNode; i,j:integer; begin xml := TXMLDocument.Create(nil); try xml.Active := True; xml.Version := ‘1.0‘; xml.Encoding := ‘UTF-8‘; xml.DocumentElement := xml.CreateElement(‘ESDDATA‘,‘ESD‘); xml.Options:=[doNodeAutoIndent]; xml.NodeIndentStr :=#9; lstfield := TStringList.Create; try lst := TStringList.Create; try lst.LoadFromFile(‘ESDStatus.txt‘); Memo1.Text := lst.Text; for i:=0 to lst.Count-1 do begin lstfield.Clear; ExtractStrings([Char(VK_TAB)],[‘ ‘],PChar(lst[i]),lstfield) ; if lstfield.Count>0 then begin node := xml.DocumentElement.AddChild(‘item‘); {node.AddChild(‘SHIFT_NAME‘).Text :=lstfield[0]; --加子元素 node.AddChild(‘PRODUCT_ROOM‘).Text :=lstfield[1]; node.AddChild(‘PDLINE_NAME‘).Text :=lstfield[2]; node.AddChild(‘POSITION‘).Text :=lstfield[3]; node.AddChild(‘CATEGORY‘).Text :=lstfield[4]; node.AddChild(‘NO‘).Text :=lstfield[5]; node.AddChild(‘STATUS‘).Text :=lstfield[6]; node.AddChild(‘PROCESSTIME‘).Text :=lstfield[7];} node.Attributes[‘SHIFT_NAME‘]:= lstfield[0]; //增加元素属性 node.Attributes[‘PRODUCT_ROOM‘]:= lstfield[1]; node.Attributes[‘PDLINE_NAME‘]:= lstfield[2]; node.Attributes[‘POSITION‘]:= lstfield[3]; node.Attributes[‘CATEGORY‘]:= lstfield[4]; node.Attributes[‘NO‘]:= lstfield[5]; node.Attributes[‘STATUS‘]:= lstfield[6]; node.Attributes[‘PROCESSTIME‘]:= lstfield[7]; end; end; finally lst.Free; end; finally lstfield.Free; end; Memo2.Lines.Text:= xml.XML.Text; finally node:=nil; xml.Active := false; xml.Free; end; end; 3 生成子元素的内容为: <?xml version="1.0" encoding="UTF-8"?> <ESDDATA xmlns="ESD"> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY01</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1009</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:35:59</PROCESSTIME> </item> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY02</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1010</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:36:01</PROCESSTIME> </item> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY03</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1011</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:36:03</PROCESSTIME> </item> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY04</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1012</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:36:05</PROCESSTIME> </item> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY05</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1013</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:36:07</PROCESSTIME> </item> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY06</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1014</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:36:10</PROCESSTIME> </item> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY07</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1015</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:36:12</PROCESSTIME> </item> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY08</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1016</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:36:14</PROCESSTIME> </item> <item> <SHIFT_NAME>Day</SHIFT_NAME> <PRODUCT_ROOM>鍒?瑾?/PRODUCT_ROOM> <PDLINE_NAME>U12</PDLINE_NAME> <POSITION>ASSY09</POSITION> <CATEGORY>Wrist</CATEGORY> <NO>1017</NO> <STATUS>0</STATUS> <PROCESSTIME>2018/05/18 09:36:16</PROCESSTIME> </item> </ESDDATA> ? 4 生成元素属性内容为: <?xml version="1.0" encoding="UTF-8"?> <ESDDATA xmlns="ESD"> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY01" CATEGORY="Wrist" NO="1009" STATUS="0" PROCESSTIME="2018/05/18 09:35:59"/> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY02" CATEGORY="Wrist" NO="1010" STATUS="0" PROCESSTIME="2018/05/18 09:36:01"/> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY03" CATEGORY="Wrist" NO="1011" STATUS="0" PROCESSTIME="2018/05/18 09:36:03"/> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY04" CATEGORY="Wrist" NO="1012" STATUS="0" PROCESSTIME="2018/05/18 09:36:05"/> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY05" CATEGORY="Wrist" NO="1013" STATUS="0" PROCESSTIME="2018/05/18 09:36:07"/> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY06" CATEGORY="Wrist" NO="1014" STATUS="0" PROCESSTIME="2018/05/18 09:36:10"/> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY07" CATEGORY="Wrist" NO="1015" STATUS="0" PROCESSTIME="2018/05/18 09:36:12"/> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY08" CATEGORY="Wrist" NO="1016" STATUS="0" PROCESSTIME="2018/05/18 09:36:14"/> <item SHIFT_NAME="Day" PRODUCT_ROOM="鍒?瑾? PDLINE_NAME="U12" POSITION="ASSY09" CATEGORY="Wrist" NO="1017" STATUS="0" PROCESSTIME="2018/05/18 09:36:16"/> </ESDDATA> ? 5:可以把以上的内容做为参数传给数据库进行处理,保证事物的原子性(具休调用待后续提供). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |