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) 生成更易读的帮助文档 ...
随机推荐
- nginx+webpy+uswgi+jwplayer组合搭建流媒体服务器
转载自:http://blog.csdn.net/cjsafty/article/details/7892392 目前,由于Flash的流行,网络上绝大多数的微视频网站都采用了Flv格式来播放视频. ...
- HDU 5878---预处理+二分查找
给一个数n,让你求一个大于等于n的最小的满足题意中2^a*3^b*5^c*7^d的数字. 思路: #include<iostream> #include<cstdio> #in ...
- js实现2048小游戏
这是学完javascript基础,编写的入门级web小游戏 游戏规则:在玩法规则也非常的简单,一开始方格内会出现2或者4等这两个小数字,玩家只需要上下左右其中一个方向来移动出现的数字,所有的数字就会想 ...
- [BZOJ3698]XWW的难题解题报告|上下界网络流|有源汇最大流
XWW是个影响力很大的人,他有很多的追随者.这些追随者都想要加入XWW教成为XWW的教徒.但是这并不容易,需要通过XWW的考核.XWW给你出了这么一个难题:XWW给你一个N*N的正实数矩阵A,满足XW ...
- Django【进阶】序列化
关于Django中的序列化主要应用在将数据库中检索的数据返回给客户端用户,特别的Ajax请求一般返回的为Json格式. 方案一:serializers 1 2 3 4 5 fromdjango.cor ...
- cygwin与vim配置
参考 http://www.jeepshoe.org/810958442.htm cygwin安装包管理器 通过终端安装apt-cyg之前选要安装以下软件包wget tar gawk bzip2 ap ...
- swift网址
http://www.cocoachina.com/industry/20140613/8818.html Swift -- 中文版两大官方文档汇总发布于:2014-06-13 15:34阅读数:22 ...
- c#使用selenium截图,操作dom元素
using System; //添加selenium的引用 using OpenQA.Selenium.PhantomJS; using OpenQA.Selenium.Chrome; using O ...
- linux下卸载Oracle
1.卸载数据库软件--10g[oracle]# cd /u01/app/oracle/product/10.2.0/db_1/oui/bin[oracle]# ./runInstaller -igno ...
- jQuery重置单选框和input框
取消选中单选框radio,第一种,第二种方式是使用jQuery实现的,第三种方式是基于JS和DOM实现的,大家可以看看下面的示例 本文提供了三种取消选中radio的方式,代码示例如下: 本文依赖于jQ ...