AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein XML Werte in einer XML datei überschreiben

Werte in einer XML datei überschreiben

Ein Thema von t0mmy · begonnen am 28. Jul 2010 · letzter Beitrag vom 29. Jul 2010
Antwort Antwort
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.476 Beiträge
 
Delphi 12 Athens
 
#1

AW: Werte in einer XML datei überschreiben

  Alt 28. Jul 2010, 18:59
Schau dir einfach mal im Forum die anderen Beispiele an (Hier im Forum suchenTXMLDocument)
und binde vorher die Unit XMLDoc und eventuell noch die Units XMLDOM und XMLIntf ein.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
t0mmy

Registriert seit: 28. Jul 2010
431 Beiträge
 
Delphi 2010 Architect
 
#2

AW: Werte in einer XML datei überschreiben

  Alt 28. Jul 2010, 19:17
Okay ich glaub ich habs.. so wie kann ich jetzt z.B.: einen eintrag in der xml datei überschreiben?
z.B.: Wenn in der xml datei <COMM>blabla</COMM> steht und ich statt blabla... Hello eintragen möchte?



Okay --> app.ChildNodes['COMM'].text:='Hello

Geändert von t0mmy (28. Jul 2010 um 19:46 Uhr)
  Mit Zitat antworten Zitat
t0mmy

Registriert seit: 28. Jul 2010
431 Beiträge
 
Delphi 2010 Architect
 
#3

AW: Werte in einer XML datei überschreiben

  Alt 29. Jul 2010, 09:32
Hallo

Soweit so gut kann ich jetzt mit dem unteren programmcode eine xml-Datei lesen und sie dann als geänderte-Datei abspeichern, aber wie kann ich nun in der xml-datei einen wert ändern? z.B

<family_name>Meyer</family_name> --> <family_name>Schiefer</family_name>

1) das müsste doch mit app.SetAttribute('family_name',' meintext'); aber es funktioniert nicht

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  lXML : iXMLDocument;
  app : IXMLNode;
begin
lXML := TXMLDocument.Create(nil);
lxml.LoadFromFile('C:\Users\Tomi\Test1\test.xml');
//HIER GEHÖRT 1) ????
lxml.SaveToFile('C:\Users\Tomi\Test1\test_geändert.xml');
end;

Geändert von mkinzler (29. Jul 2010 um 09:40 Uhr) Grund: Delphi-Tag eingefügt
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.879 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Werte in einer XML datei überschreiben

  Alt 29. Jul 2010, 09:42
http://www.delphi-treff.de/tutorials...y/einfuehrung/
Markus Kinzler
  Mit Zitat antworten Zitat
t0mmy

Registriert seit: 28. Jul 2010
431 Beiträge
 
Delphi 2010 Architect
 
#5

AW: Werte in einer XML datei überschreiben

  Alt 29. Jul 2010, 10:09
Danke für den Link aber der bringt mich nicht weiter, hab da aus einem anderen thread (http://www.delphipraxis.net/141106-x...-einlesen.html) mehr informationen rauslesen können... aber dazu fehlt mir jegliches Verständnis. Ich möcht nochmal erwähnen das ich ein Anfänger bin.



Hab da jetzt 3 Befehle, aber bei allen drei bekomm ich einen Laufzeitfehler..
Delphi-Quellcode:
//app.ChildNodes['family_name'].text:='Schiefer';
//app.SetAttribute('family_name','Schiefer');
//app.ChildValues['family_name']:='Schiefer';

Geändert von mkinzler (29. Jul 2010 um 10:24 Uhr) Grund: Delphi-Tag eingefügt
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.879 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Werte in einer XML datei überschreiben

  Alt 29. Jul 2010, 10:25
Was für ein Fehler?
Zitat:
Ich möcht nochmal erwähnen das ich ein Anfänger bin.
Kann man ändern.

BTW: Verwende bitte Code-Tags (in deinem Fall den Delphi-Tag)
Markus Kinzler
  Mit Zitat antworten Zitat
t0mmy

Registriert seit: 28. Jul 2010
431 Beiträge
 
Delphi 2010 Architect
 
#7

AW: Werte in einer XML datei überschreiben

  Alt 29. Jul 2010, 10:57
Man möge den Kommentar beachten.
Was mach ich falsch??

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  lXML : iXMLDocument;
  app : IXMLNode;
begin
lXML := TXMLDocument.Create(nil);
lxml.LoadFromFile('C:\Users\Tomi\Test1\test.xml');
//lxml.Active := True;
app.ChildNodes['family_name'].text:='Schiefer'; // Hier die Fehlermeldung bzw. die Zugriffsverletzung
lxml.SaveToFile('C:\Users\Tomi\Test1\test_geändert.xml');
end;
end.

Hier die XML-Datei:
XML-Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<test>
   <applicant_1>
      <family_name>Meyer</family_name>
      <given_name>Harald</given_name>
      <testdate>13.03.2009</testdate>
      <language>english</language>
      <WR_RW>229</WR_RW>
   </applicant_1>
</test>
Also warum app.ChildNodes könnte mir klar sein, weil ich nämlich nicht den ganzen XML-Code einlese aber warum funktioniert nicht app.ChildValues['family_name']:='Schiefer'; oder app.SetAttribute('family_name','Schiefer'); ??

Geändert von t0mmy (29. Jul 2010 um 11:21 Uhr) Grund: Delphi-Tag eingefügt; XML-Tag eingefügt; ChildNodes
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz