代码如下:
pp_XML.LoadFromFile(DBConn.xml');
pp_XML.DocumentElement.NodeName;
....
第二句就说地址错误!我真是晕死了!看了帮助就是这么用的啊,高人来指点啊!
pp_XML.LoadFromFile(DBConn.xml');
pp_XML.DocumentElement.NodeName;
....
第二句就说地址错误!我真是晕死了!看了帮助就是这么用的啊,高人来指点啊!
1 DBConn.xml是一个合法的XML文件
2 帮助是说的很清楚LoadFromFile会自动将active属性设置为true,我也测试过为true
pp_XML: IXMLDocument;//注意啊,这儿要用IXMLDocument而不是TXMLDocument .... pp_XML := TXMLDocument.Create(nil);
pp_XML.LoadFromFile.....
.....
pp_XML: TXMLDocument;//这个是单纯指针.
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, xmldom, XMLIntf, StdCtrls, msxmldom, XMLDoc;type
TForm1 = class(TForm)
XMLDocument1: TXMLDocument;
Button1: TButton;
Memo1: TMemo;
Edit1: TEdit;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
//k: integer;
nn : IXMLNode;
vv : IXMLNode;
kk : String;
k :IXMLNode;//IXMLNodeList;
c : Integer;
begin
{k := 8;
k := self.XMLDocument1.DocumentElement.ChildValues['checkdate'];
edit1.Text := Inttostr(k);
}//--添加节点
nn := XMLDocument1.DocumentElement.AddChild('header');
//nn.Attributes[''] := '';
vv := nn.AddChild('receiveflag');
vv.Text := 'jjjj';
vv := nn.AddChild('checkdate');
vv.Text := 'dfd';
XMLDocument1.SaveToFile('aa.xml');//-- 读取节点的值
k := XMLDocument1.DocumentElement.ChildNodes[0];
c := XMLDocument1.DocumentElement.ChildNodes.Count;//edit1.Text := inttostr(c)+XMLDocument1.FileName;
//showmessage(k);
edit1.Text := k.ChildNodes['receiveflag'].Text;
end;procedure TForm1.Button2Click(Sender: TObject);
var
a : TXMLDocument;
begin
a:=TXMLDocument.Create(self);
a.FileName:='http://localhost/xml/web.xml';
a.SaveToFile('xml.xml');
end;end.注意,记得把XMLDocument1组件的路径设置好。