Thema: Delphi XML-Datei manipulieren

Einzelnen Beitrag anzeigen

Pader1305

Registriert seit: 13. Aug 2018
12 Beiträge
 
#1

XML-Datei manipulieren

  Alt 13. Aug 2018, 12:22
Delphi-Version: 10.1 Berlin
Hallo Zusammen,

ich bin gerade in meiner Ausbildung dabei mich mit Delphi vertraut zu machen und so möchte ich gerne eine XML-Datei auslesen und den Node
"alias" überschreiben. Allerdings überschreibt er diesen Wert einfach nicht.
Mag mir jemand hier auf die Sprünge helfen? Ich bin wie gesagt noch ein Delphi-Anfänger.
Über jede Hilfe wäre ich sehr dankbar!

Delphi Quellcode
Delphi-Quellcode:
procedure TForm1.Button_ReadClick(Sender: TObject);
var
  nodeLcsdb : IXMLNode;

XMLDocument1 : iXMLDocument;

app : iXMLNode;

begin
  Memo1.Clear;

  XMLDocument1 := TXMLDocument.Create(nil);
  XMLDocument1.LoadFromFile('C:\Users\kuipers.patrick\Desktop\XML\test.xml');

  app := XMLDocument1.ChildNodes.FindNode('lcsdb').ChildNodes.FindNode('db').ChildNodes.FindNode('alias');

    XMLDocument1.LoadFromFile('C:\Users\kuipers.patrick\Desktop\XML\test.xml');
    nodeLcsdb := XMLDocument1.ChildNodes.FindNode('lcsdb');


  if app <> nil then
  begin
    app.Text := 'Erfolgreich';
    showMessage(app.Text);
    XMLDocument1.SaveToFile('test.xml');
    Memo1.Lines.Add(nodeLcsdb.ChildNodes.FindNode('db').ChildValues['alias']);
    Memo1.Lines.Add(nodeLcsdb.ChildNodes.FindNode('db').ChildValues['databasename']);

  end else
  begin
    showMessage('Node not found');
  end;
Mit Memo1 wollte ich mir den Wert des "Alias" anschauen, um zu sehen, ob es überschrieben wurde, was aber nicht der Fall ist.
Den hier gezeigten Code hab von diesem Forumbeitrag https://www.delphipraxis.net/153310-...schreiben.html und an einigen Stellen ein wenig rumexperimentiert.


Code:
<?xml version="1.0" encoding="windows-1252"?>
<lcsdb>
   <db>
      <alias>Test</alias>
      <databasename>TestObjekt1</databasename>
   </db>
</lcsdb>
  Mit Zitat antworten Zitat