Delphi 7生成XML
文件格式为:
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 :=#;
lstfield := TStringList.Create;
try
lst := TStringList.Create;
try
lst.LoadFromFile('ESDStatus.txt');
Memo1.Text := lst.Text;
for i:= to lst.Count- do
begin
lstfield.Clear; ExtractStrings([Char(VK_TAB)],[' '], PChar(lst[i]), lstfield) ; if lstfield.Count> 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[]; //增加元素属性
node.Attributes['PRODUCT_ROOM']:= lstfield[];
node.Attributes['PDLINE_NAME']:= lstfield[];
node.Attributes['POSITION']:= lstfield[];
node.Attributes['CATEGORY']:= lstfield[];
node.Attributes['NO']:= lstfield[];
node.Attributes['STATUS']:= lstfield[];
node.Attributes['PROCESSTIME']:= lstfield[];
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:可以把以上的内容做为参数传给数据库进行处理,保证事物的原子性(具休调用待后续提供).
Delphi 7生成XML的更多相关文章
- Delphi中解析Xml的控件-SimDesign NativeXml
Delphi中解析Xml的控件-SimDesign NativeXml 正在学习,感觉应用很方便.无源代码的版本还是免费的. SimDesign.NativeXml是一个delphi和bcb的XML控 ...
- Android 解析XML文件和生成XML文件
解析XML文件 public static void initXML(Context context) { //can't create in /data/media/0 because permis ...
- 让Visual Studio 2013为你自动生成XML反序列化的类
Visual Sutdio 2013增加了许多新功能,其中很多都直接提高了对代码编辑的便利性.如: 1. 在代码编辑界面的右侧滚动条上显示不同颜色的标签,让开发人员可以对所编辑文档的修改.查找.定位情 ...
- Rss 订阅:php动态生成xml格式的rss文件
Rss 简介: 简易信息聚合(也 叫聚合内容)是一种描述和同步网站内容的格式.使用RSS订阅能更快地获取信息,网站提供RSS输出,有利于让用户获取网站内容的最新更新.网络用户可以在客户端借助于支持RS ...
- java 解析并生成 XML
在 java 中使用 Dom4j 解析 XML 对 XML 文件的解析,通常使用的是 Dom4j 和 jdom 作为XML解析工具. 在此只介绍下 Dom4j 对 XML 文件的解析使用方法. 1. ...
- Java生成XML文件
我们在数据库中的数据可以将其提取出来生成XML文件,方便传输.例如数据库中有Admin这张表: 我们写一个java类表示admin数据: package xmlDom.vo; import java. ...
- Android 使用xml序列化器生成xml文件
在<Android 生成xml文件>一文中使用流的形式写入xml格式文件,但是存在一定的问题,那就是在短信内容中不能出现<>之类的括号,本文使用xml序列化器来解决 xml序列 ...
- Android 生成xml文件
生成XML文件备份短信,其格式为: <?xml version="1.0" encoding="UTF-8" standalone="true& ...
- VS2010 生成Xml格式的注释文档
项目, 属性, build, 勾选xml document file, 重新build, 即可生成xml注释文件, 然后还得找工具软件(看到anytao推荐SandCastle) 生成更易读的帮助文档 ...
随机推荐
- CMU Bomblab 答案
室友拉我做的... http://csapp.cs.cmu.edu/3e/labs.html Border relations with Canada have never been better. ...
- git上传本地项目
1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点 ...
- Linux动态库生成以及调用
Linux下动态库文件的文件名形如 libxxx.so,其中so是 Shared Object 的缩写,即可以共享的目标文件. 在链接动态库生成可执行文件时,并不会把动态库的代码复制到执行文件中,而是 ...
- html初探
HTML HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,他是一种制作万维网页面标准语言(标记).相当于定义统一的一套规则,大家都来遵守他,这样就可以让浏 ...
- DotNETCore 学习笔记 异常处理
Error Handling public void Configure(IApplicationBuilder app, IHostingEnvironment env) { app.UseIISP ...
- [bzoj1009][HNOI2008]GT考试——KMP+矩阵乘法
Brief Description 给定一个长度为m的禁止字符串,求出长度为n的字符串的个数,满足: 这个字符串的任何一个字串都不等于给定字符串. 本题是POJ3691的弱化版本. Algorithm ...
- bzoj 1083 最小生成树
裸的最小生成树. /************************************************************** Problem: User: BLADEVIL Lan ...
- TLS回调函数
@author: dlive TLS (Thread Local Storage 线程局部存储 )回调函数常用于反调试. TLS回调函数的调用运行要先于EP代码执行,该特性使它可以作为一种反调试技术使 ...
- [Leetcode Week8]Edit Distance
Edit Distance 题解 原创文章,拒绝转载 题目来源:https://leetcode.com/problems/edit-distance/description/ Description ...
- POJ1080(LCS变形)
Human Gene Functions Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Oth ...