您的位置:首页 > 编程语言 > Delphi

DELPHI读写xml文件

2016-06-29 09:45 716 查看
有时,只需要用XML作一些小的应用,比如只是简单地保存日志或者一些配置,这时我们只需要直接读写XML就好,效率第一。

Delphi盒子有一个直接读写XML文件 (例子和代码),其核心函数为下面两个函数(一读一写):

{-------------------------------------------------------------------------------

  Fun/Pro:      GetXMLNodeValue

  @Date:      2004.12.11

  @Param:     xmlFile xml文件

  @Param:     xmlnodepath 节点

  @Param:     xmlattrname 节点中的属性名称,如果直接取节点值则可以忽略此参数。

  @Param:     dep  节点的参数的分隔符,默认为.

  @Return:      第一个节点的值

-------------------------------------------------------------------------------}

function GetXMLNodeValue(strEntityEngineFile:String; xmlNodePath:String;

                         const xmlattrname:String=''; const dep:Char ='.'):String;

var

  xmlDocument :IXMLDocument;

  node        :IXMLNode;

  xmlnodeList :TStrings;

  i           :Integer;

  urlcount    :Integer;

begin

    //xml节点路径

    xmlnodeList:=TStringList.Create;

    xmlnodeList.Delimiter:=dep;

    xmlnodeList.DelimitedText:=xmlnodepath;

    urlcount:=xmlnodeList.Count;

    //xml对象

    xmlDocument :=TXMLDocument.Create(nil);

    xmlDocument.LoadFromFile(strEntityEngineFile);

    xmlDocument.Active:=true;

    try

        node:= xmlDocument.DocumentElement;

        if(node.NodeName = xmlnodeList[0]) then begin

            //扫描节点

            for i := 1  to urlcount-1 do begin

                if(node<>nil) then

                    node := getnodefromIXMLNodeList(node.ChildNodes,xmlnodeList[i])

                else Break;

            end;

            if(node=nil)then begin

                result:='';

            end else begin

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: