Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  TM - Plant Simulation
  XML schreiben

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  XML schreiben (1155 mal gelesen)
markus31
Mitglied


Sehen Sie sich das Profil von markus31 an!   Senden Sie eine Private Message an markus31  Schreiben Sie einen Gästebucheintrag für markus31

Beiträge: 2
Registriert: 17.01.2012

erstellt am: 17. Jan. 2012 19:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Community,

ich habe ein großes Problem.

Gegeben ist folgendes XML-File:

<?xml version="1.0" encoding="utf-8"?>
<A>
<B>
  <x>10</x>
  <y>2</y>
  <z>3</z>
</B>
</A>

Ich möchte nun den Wert bei x ändern.

Meine Methode bisher:

is
tbl:table;
do
XMLSchnittstelle.Dateiname:="C:\xml\test.xml";
XMLSchnittstelle.öffneDokument;

tbl:=XMLSchnittstelle.holeKnoten("/A/B[x=10]",1);
tbl[3,1][4,2]:="200";

XMLSchnittstelle.aktualisiereKnoten(tbl);
XMLSchnittstelle.schreiben;
XMLSchnittstelle.schließen;
end;

Das Problem ist, dass nun folgendes herauskommt:

<?xml version="1.0" encoding="utf-8"?>
<A>
<B>200<x>10</x><y>2</y><z>3</z></B></A>


Die Zeile  tbl[3,1][4,2]:="200";    ist fehlerhaft -> Exception: Indexadressierung ist nur für Listen oder Objekte mit
einer Kapazität größer 1 möglich.

Ich bin total ratlos und ich wäre froh, wenn sich jemand dazu äußern würde und mir es erklärt.

Vielen Dank

[Diese Nachricht wurde von markus31 am 17. Jan. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

markus31
Mitglied


Sehen Sie sich das Profil von markus31 an!   Senden Sie eine Private Message an markus31  Schreiben Sie einen Gästebucheintrag für markus31

Beiträge: 2
Registriert: 17.01.2012

erstellt am: 17. Jan. 2012 20:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

ich hab die lösung.

so muss entsprechende zeile heißen:

tbl[5,1][3,1]:="100"; Wenn man den Z-Wert ändern möchte
das [5,1] muss bleiben, damit greift man auf die zelle "nachkommen" des tables zu

anmerkung: ein datentyp table ist nach zeilen so organisiert:

Name, Namensraum, Wert, Attribute, Nachkommen. somit ist [5,1] nachkommen, [2,1] namensraum usw.

um das oben benannte xml-beispiel wieder aufzunehmen.

   tbl[5,1][3,1] = 10
   tbl[5,1][3,2] = 2
   tbl[5,1][3,2] = 3

damit hat man zugriff auf die wert des tables

[Diese Nachricht wurde von markus31 am 17. Jan. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz