![]() |
Einen Wert aus XML auslesen
Hallo,
ich habe heute zum ersten mal eine XML-Datei vor mir und muss dort einen bestimten Wert auslesen. Aber irgendwie blicke ich das XML Zeugs noch nicht :roll: Ich muss aus dieser Datei:
Code:
Denn MonitorStatus auslesen. Wer kann mir denn einen Denkanstoss geben?
<Net_x0020_Display_x0020_Systems_x0020_Runtime_x0020_Settings_x0020_file>
<xs:schema id="Net_x0020_Display_x0020_Systems_x0020_Runtime_x0020_Settings_x0020_file" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xs:element name="Net_x0020_Display_x0020_Systems_x0020_Runtime_x0020_Settings_x0020_file" msdata:IsDataSet="true" msdata:Locale="de-DE"> <xs:complexType> <xs:choice maxOccurs="unbounded"> <xs:element name="PADSRuntime" msdata:CaseSensitive="False"> <xs:complexType> <xs:sequence> <xs:element name="MonitorStatus" type="xs:string" minOccurs="0" /> <xs:element name="KeepAliveTime" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> </xs:element> </xs:schema> <PADSRuntime> <MonitorStatus>OFF</MonitorStatus> <KeepAliveTime>10.06.2004 09:55:31</KeepAliveTime> </PADSRuntime> </Net_x0020_Display_x0020_Systems_x0020_Runtime_x0020_Settings_x0020_file> Danke |
Re: Einen Wert aus XML auslesen
Hallo Urmel,
vielleicht hilft dir [user=Chakotay1308]Chris'[/user] ![]() Greetz alcaeus |
Re: Einen Wert aus XML auslesen
Zitat:
das habe ich schon gelesen. Aber irgendwie ist heute nicht mein Tag :wall: Ich peile es einfach nicht :roll: |
Re: Einen Wert aus XML auslesen
Schau mal ins erwähnte Tutorial unter dem Stichwort XPath. Dein Pfad müsste, wenn ich mich jetzt nicht arg verguckt habe
Code:
lauten. Stichwort: "selectSingleNode", bzw. "selectNodes", usw.
Net_x0020_Display_x0020_Systems_x0020_Runtime_x0020_Settings_x0020_file/PADSRuntime/MonitorStatus
|
Re: Einen Wert aus XML auslesen
So, ich habe es geschaft! Danke euch beiden.
Delphi-Quellcode:
Ich hoffe das ist XML-Technich richtig?
procedure TForm1.Button2Click(Sender: TObject);
var xmlfile: string; Viewer: IXMLDOMNodeList; begin xmlFile := 'PADSRuntime.xml'; xmlDoc := CoDOMDocument40.Create; xmlDoc.setProperty('NewParser', true); if not FileExists(fAppPath + xmlFile) then begin ShowMessage('XML-Datei nicht gefunden'); end else begin xmlDoc.load(fAppPath + xmlFile); end; if xmlDoc.parseError.errorCode <> 0 then begin MessageDlg('Die XML-Datei ist nicht korrekt!' + #13#10 + 'Das Programm wird nun beendet.', mtError, [mbOK], 0); Application.Terminate; end; viewer := xmlDoc.documentElement.selectNodes('PADSRuntime/MonitorStatus'); Label1.Caption := viewer.item[0].text; // Monitorstatus im Label anzeigen end; |
Re: Einen Wert aus XML auslesen
Ich weiß nicht, was das hier
Zitat:
Delphi-Quellcode:
if not FileExists(fAppPath + xmlFile) then
begin ShowMessage('XML-Datei nicht gefunden'); exit; end; xmlFile := 'PADSRuntime.xml'; xmlDoc := CoDOMDocument40.Create; if(xmlDoc <> nil) then try xmlDoc.load(fAppPath + xmlFile); if xmlDoc.parseError.errorCode <> 0 then begin MessageDlg('Die XML-Datei ist nicht korrekt!' + #13#10 + 'Das Programm wird nun beendet.', mtError, [mbOK], 0); Application.Terminate; end; viewer := xmlDoc.documentElement.selectNodes('PADSRuntime/MonitorStatus'); if(viewer <> nil) then Label1.Caption := viewer.item[0].text; // Monitorstatus im Label anzeigen finally xmlDoc := nil; end; |
Re: Einen Wert aus XML auslesen
Zitat:
Ne, im Ernst: Ich bin ja für jeden Hinweiss dankbar umd dieses XML endlich zu verstehen. :thumb: |
Re: Einen Wert aus XML auslesen
Nein! Ich hab´s auch in Chakotays MovieOrganizer (Demo und Tutorial) gesehen. In dem Fall gab es keine Probleme, aber in irgendeinem anderen Fall schon. Und irgendwo (entweder hat der Parser selbst gemeckert, oder es steht in der Hilfe zu MS-XML) ist es sogar nicht erlaubt, weil du sonst Schwierigkeiten hast.
Ich gucke noch mal nach. Aber das wird erst Nachmittag. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:55 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