2,507
社区成员




uses msxml;
doc:IXMLDOMDocument;
budgetdoc:ixmlDomNode;
Rela:IxmlDOMNode;
rs:ixmldomnodelist;
//建立或取得XML结点
doc := CoDOMDocument.create;
doc.load('C:\temp.xml');
budgetDoc := doc.selectSingleNode('BudgetDoc');
rela := budgetdoc.SelectSingleNode('Relation');
//创建XML子结点
if not assigned(rela) then
begin
rela := doc.createElement('Relation');
rela.setAttribute('BudgetId',0);
rela.setAttribute('name','名称');
budgetdoc.appendChild(rela);
end;
//取子结点(序列)
rs := rela.selectNodes('Rela[@BudgetId="2" and @TaskId="8"]');
for i := 0 to rs.length -1 do
begin
s:= s + rs[i].attributes.getnameditem('NewRate').nodeValue;
end;
rela:=doc.ChildNodes.FindNode('DOMNode') as IxmlDOMNode;
//移除子结点
for i := rs.length -1 downto 1 do
rela.removeChild(rs[i])
//取父结点
if assigned(anode.parentNode) and (Anode.parentNode.nodeName='Task') then
result := Anode.parentNode;
//取属性
DOC.DocumentElement.Attributes['Name']
rela.Attributes['Name']
rs.Nodes[i].Attributes['Name']
Ajob:ixmldomnode;jobs:ixmldomNodeList;
jobs := Ajob.selectNodes('RCJ[@Attrib="'+AAttrib+'"]')