delphi笔记之XML操作

来源:互联网 发布:java从入门到放弃图片 编辑:程序博客网 时间:2024/05/07 05:24

======================================================
注:本文源代码点此下载
======================================================

normal

0

7.8 pt

0

2

false

false

false

en-us

zh-cn

x-none

创建xml可用xmldocument.xml.add(‘xml内容’)

newnode:=node.addchlide(‘节点名’) //增加节点,返回新的节点

cnode,pnode:ixmlnode;

pnode:=xmldocument.addchilde(‘节点名’);

//addchilde后返回生成的节点,第一次生成的pnode是根节点

pnode.setattribute(‘属性名’,’属性值’);//增加节点的属性

添加叶子子节点

cnode=pnode.addchilde(‘节点名’);

cnode.text:=’叶子节点的文本值’;

保存xml文档用xmldocument.savetofile(‘路径及文件名’);

读取xml

读取xml文件用xmldocument.loadformfile(‘文件路径’);

nodelist:ixmlnodelist

node:=xmldocument.documentelement//获得xml文件的根节点

nodelist:=node.childenodes;//获得node节点的所有子节点列表

count:=nodelist.count;//获得列表中节点的总数

node:=nodelist.first://获得列表中第一个子节点

node:=nodelist.last://获得列表中最后一个子节点

node:=node.childenode[索引值]//获得node索引值为’[]’中值的子节点

node:=node.previoussibling;//获得节点的上一个节点

node:=node.nextsibling;//获得节点的下一个节点

node:=node.parentnode;//获得节点的父节点

node.text //获得节点的文本值

node.nodename//节点名

node.nodevalue //节点值

获得节点属性与获得子节点的方法类似

node.arrtibutenodes //获得node的属性列表

node.arrtibutenodes.count; //获得属性总数

node.arrtibutenodes[索引值] //获得某个属性

node.arrtibutenodes[索引值].text//读取某个属性的文本

node.attributenodes[索引值].nodename//属性名

node.attributenodes[索引值].nodevalues //属性值

其他操作:

删除节点:

nodelist := xmldocument1.documentelement.childnodes;

nodelist.delete(nodelist.count-1); //删除最后一条

判断是否有子节点

node.haschlidenodes//返回值为boolean

判断是否具有 text 属性

node.istextelement//返回值为boolean

//通过haschildenode和istextelement可以判断node是支节点还是叶子节点,支节点的haschlidenodes为true ,istextelement为false;叶子节点的istextelement为true;判断是否文本用node.nodename='#text'(文本也可看做是一个节点);判断空节点用(not node.haschlidenodes) and (not

node.istextelement

格式化xml:

formatxmldata(xmldocument.xml.text)

如果要想用浏览器读取xml时要用到shellapi:

shellexecute(handle,’open’,’explorer.exe’,’xml文件路径’, nil, sw_shownormal);


======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/