![]() |
Bestimmten Wert aus XML-Datei auslesen
Hallo Leute,
ich versuche bereits seit 4 Stunden krampfhaft aus folgender XML-Datei:
Code:
die Werte, die innerhalb von MemoData stehen auszulesen, erhalte aber immer leere Werte.
<?xml version="1.0" encoding="ASCII"?>
<Exif> <APP1> <Exif_IFD> <DateTimeOriginal>2012:03:15 18:25:56</DateTimeOriginal> </Exif_IFD> <GPS_IFD> <GPSLatitudeRef>N</GPSLatitudeRef> <GPSLatitude>00:00:00</GPSLatitude> <GPSLongitudeRef>E</GPSLongitudeRef> <GPSLongitude>00:00:00</GPSLongitude> </GPS_IFD> </APP1> <APP5> <CameraMemo1> <MemoItem1>Projekt</MemoItem1> <MemoData1>SDhTMLpXJR_001_v</MemoData1> </CameraMemo1> <CameraMemo2> <MemoItem2>Mitarbeiter</MemoItem2> <MemoData2>Winner</MemoData2> </CameraMemo2> <CameraMemo3> <MemoItem3>DokTyp</MemoItem3> <MemoData3>Projektabnahme</MemoData3> </CameraMemo3> <CameraMemo4> <MemoItem4></MemoItem4> <MemoData4></MemoData4> </CameraMemo4> <CameraMemo5> <MemoItem5></MemoItem5> <MemoData5></MemoData5> </CameraMemo5> </APP5> </Exif> Ich benutze hierfür TXMLDocument. Könnt ihr mir helfen? |
AW: Bestimmten Wert aus XML-Datei auslesen
Und was machst du bisher (Quellcode)?
|
AW: Bestimmten Wert aus XML-Datei auslesen
Wenn Du jetzt noch zeigst (source) wie Du es machst, dann hast Du eine echte Chance, daß Dir jemand helfen kann.
Gruß K-H |
AW: Bestimmten Wert aus XML-Datei auslesen
Ja sorry, vergessen ;)
So versuche ich das Attribut auszulesen:
Code:
TempString := XMLDoc.DocumentElement.ChildNodes['CameraMemo1'].Text;
|
AW: Bestimmten Wert aus XML-Datei auslesen
XML ist für mich lange her.
(Ich hatte ![]() Ansonsten hast Du in Deinem Knoten m.E. nur Unterknoten und keinen Text. Und Attribute sind im XML auch etwas anderes als Texte. Aber genauer kann ich leider nicht weiter helfen. |
AW: Bestimmten Wert aus XML-Datei auslesen
Wer hat sich eigentlich dieses XML-Format ausgedacht?
Noch könnte man vielleicht daran etwas ändern... Die Benennung der Elemente ist ziemlich ungeschickt. Besser wäre:
XML-Code:
<APP5>
<CameraMemo id="1"> <MemoItem>Projekt</MemoItem> <MemoData>SDhTMLpXJR_001_v</MemoData> </CameraMemo> <CameraMemo id="2"> <MemoItem>Mitarbeiter</MemoItem> <MemoData>Winner</MemoData> </CameraMemo> |
AW: Bestimmten Wert aus XML-Datei auslesen
Leider kann ich an der XML-Datei nichts ändern.
Die kommt so von einem Gerät :( |
AW: Bestimmten Wert aus XML-Datei auslesen
Delphi-Quellcode:
Liegt "CameraMemo1" im DocumentElement/RootElement aka "Exif"?
TempString := XMLDoc.DocumentElement.ChildNodes['CameraMemo1'].Text;
Wenn nein, dann kann es dort auch nicht gefunden werden. :stupid: Du mußt es schon im richtigen Knoten suchen. PS: XPath bietet auch Möglichkeiten global über mehrere Unterknotenebenen hinweg zu suchen. |
AW: Bestimmten Wert aus XML-Datei auslesen
Hmm, das stimmt wohl.
Hab's jetzt so probiert:
Code:
Aber auch das bringt mir nur leere Werte...
TempString := XMLDoc.DocumentElement.ChildNodes['CameraMemo1'].ChildNodes['MemoData1'].Text;
Hab' ich jetzt hier 'nen Denkfehler? |
AW: Bestimmten Wert aus XML-Datei auslesen
Jupp, denn auch der Pfad stimmt nicht.
APPS5 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:42 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