我如何使用TXMLDocument将版本和编码添加到xml文件中

时间:2011-03-18 22:07:00

标签: xml delphi delphi-xe

我想将版本和编码添加到使用TXMLDocument组件

创建的xml文件中
<?xml version="1.0" encoding="utf-8"?>

我正在做这个

XmlDoc   :=TXMLDocument.Create(nil);
XmlDoc.Version:='1.0';
XMLDoc.Encoding:='utf-8';

但是我收到了此行中的访问冲突

XmlDoc.Version:='1.0';

我如何添加版本和编码?

2 个答案:

答案 0 :(得分:17)

在修改XML文档属性之前,必须先将Active属性设置为True

XmlDoc   :=TXMLDocument.Create(nil);
XmlDoc.Active:=True;
XmlDoc.Version:='1.0';
XMLDoc.Encoding:='utf-8';

答案 1 :(得分:1)

如果使用TXMLDocument所有者构造nil,新实例将使用引用计数来维护其生命周期,因此必须将其分配给IXMLDocument变量以维持引用计数正确或者实例将过早释放。在这种情况下,请勿使用TXMLDocument变量。这是记录在案的行为,会占用您的AV。使用TXMLDocument的动态实例时,最好使用NewXMLDocument()LoadXML...()函数。