delphi读XML

XML文件内容;
<?xml version="1.0" encoding="GB2312"?>
<我的书>
    <漫画 作者="小飞">
        <书名>火影忍者</书名>
        <价格>100</价格>
    </漫画>
    <漫画 作者="大飞">
        <书名>死神</书名>
        <价格>100</价格>
    </漫画>
    <漫画 作者="阿斗">
        <书名>天牢</书名>
        <价格>200</价格>
    </漫画>
    <小说 作者="阿斗">
        <书名>天牢</书名>
        <价格>200</价格>
    </小说>
</我的书>


delphi内容;
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, xmldom, XMLIntf, msxmldom, XMLDoc, StdCtrls;

type
TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    XMLDocument1: TXMLDocument;
    procedure Button1Click(Sender: TObject);
private
    { Private declarations }
public
    { Public declarations }
end;
mybook = class
    name: string;
    money: string;
    author: string;
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
root: IXMLnode;
lei: IXMLNode;
info: IXMLNode;

book: mybook;
i: integer;
begin
xmldocument1.LoadFromFile('xml.xml');
root := xmldocument1.DocumentElement;

lei := root.ChildNodes.First;
while lei <> nil do
begin
    if lei.NodeName = '漫画' then
    begin
      book := mybook.Create;
      book.author := lei.Attributes['作者'];

      info := lei.ChildNodes.First;

      while info <> nil do
      begin
        if info.NodeName = '书名' then
          book.name := info.Text
        else if info.NodeName = '价格' then
          book.money := info.Text;
        info := info.NextSibling;
        //showmessage('中华人民共和国');
      end;

      memo1.Lines.Add(book.name + book.money + book.author);
    end;
    lei := lei.NextSibling;
end;

end;

end.

转载于:https://www.cnblogs.com/ghd2004/archive/2008/08/22/1274252.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值