Hallo marabu,
vielen Dank für deine Hilfe.
Habe mich die letzten Tage mal etwas mit
XML beschäftigt und mir viele Beispiele aus dem Forum angeschaut und ausprobiert,
um das ganze Thema verstehen zu lernen.
... werd ich aber noch viel üben müssen
Mit dem Beispiel von Dir konnte ich meine Anfrage lösen, denke ich.
Ich habe das jetzt so umgesetzt:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var xmlDoc: IXMLDocument;
xmlFile: string;
bXMLChange: boolean;
begin
with TStringList.Create do
begin
xmlFile := 'C:\DOCU0001.001';
LoadFromFile(xmlFile);
if XMLChangeAttribute(xmlFile, Text, '//StoreProperties', 'DocumentName', '123456789') then
bXMLChange := true
else
bXMLChange := false;
Free;
end;
end;
function XMLChangeAttribute(sFile, markup, ePath, aName, aValue: string): boolean;
var
doc: IXMLDocument;
nl: IDOMNodeList;
i: Integer;
begin
Result := true;
doc := LoadXMLData(markup);
try
with doc.DOMDocument as IDOMNodeSelect do
nl := SelectNodes(ePath);
for i := 0 to Pred(nl.length) do
with nl.item[i] as IDOMElement do
begin
setAttribute(aName, aValue);
doc.SaveToFile(sFile);
end
except
Result := false;
end;
end;
Könnte ich diese Funktion nun eigentlich auch (sicherlich etwas abgeändert) verwenden,
um Werte bestimmter Knoten zu ändern?
Also nochmals vielen Dank
CU Bea