![]() |
XML laden,bearbeiten,speichern,validieren (MSXML 4.0)
Tach zusammen,
ich wollte mal kurz fragen ob mir einer die Grundlegenden Sachen für den MSXML 4.0 Parser posten kann. Einzelne Sachen hab ich zwar schon gefunden, aber wäre nochmal praktisch wenn mir jemand alles auflisten kann. Besonders zum Thema "Validieren" hab ich zu Delphi und dem MSXML 4.0 bisher nichts sinnvolles gefunden. Schonmal vielen Dank :) PS: Ist es auch irgendwie möglich den XML Code wenn man ihn geladen hat ohne große Probleme einzufärben? Je nach Elementen? Oder müsste man sich da was eigenes schreiben? |
Re: XML laden,bearbeiten,speichern,validieren (MSXML 4.0)
bezüglich Validieren: schau mal ins
![]() |
Re: XML laden,bearbeiten,speichern,validieren (MSXML 4.0)
Zitat:
|
Re: XML laden,bearbeiten,speichern,validieren (MSXML 4.0)
Schonmal Danke für die Antworten, jedoch was ist nun mit Speichern,Laden und so weiter? :)
MfG Alaitoc |
Re: XML laden,bearbeiten,speichern,validieren (MSXML 4.0)
am Einfachsten so...
Delphi-Quellcode:
die XML.Options sind so gewählt, daß der XML-Text schön formatiert ist (doNodeAutoIndent) und daß es keine Exceptions beim Zugriff auf nicht existierende Nodes/Attributes gibt (doNodeAutoCreate+doAttrNull)
Var XML: TXMLDocument;
Node: IXMLNode; // laden XML := TXMLDocument.Create(Self); Try XML.LoadFromStream(Stream); XML.Active := True; // bei active ... ich glaub das war hier eventuell nimmer // nötig *überleg* ... aber schaden tut's bbestrimmt auch nich XML.Options := [doNodeAutoCreate, doNodeAutoIndent, doAttrNull]; //Node := XML.DocumentElement. ... ... Finally XML.Free; End; // speichern XML := TXMLDocument.Create(Self); Try XML.Active := True; XML.Version := '1.0'; XML.StandAlone := 'yes'; XML.Encoding := 'UTF-8'; XML.Options := [doNodeAutoCreate, doNodeAutoIndent, doAttrNull]; XML.AddChild('xml'); //Node := XML.DocumentElement. ... ... XML.SaveToStream(Stream); Finally XML.Free; End; |
Re: XML laden,bearbeiten,speichern,validieren (MSXML 4.0)
Hab ein kleines Problem, eigentlich läuft nun der XML Parser soweit...jedoch sobald irgendwas an der XML Datei nicht funktioniert kann ich sie nicht laden...also wenn sie irgendeinen kleinen Fehler an der Struktur hat oder wenn sie mit dem geladenen Schema nicht übereinstimmt...
Den Ladevorgang rufe ich damit auf:
Delphi-Quellcode:
Also wie kann ich das ganze hinkriegen :?:
XMLDocParser.Load(LoadFile.Dialog.FileName);
if XMLDocParser.ParseError.ErrorCode=0 then //Falls kein Fehler vorhanden ist begin txtXMLEdit.Text:=XMLDocParser.XML; end else begin txtXMLEdit.Text:=XMLDocParser.XML; txtxmlerrorcode.Lines.Add('Die geladene Datei entspricht nicht dem XML-Standard'); txtxmlerrorcode.Lines.Add(XMLDocParser.ParseError.Reason); ShowMessage('Die geladene Datei entspricht nicht dem XML-Standard'); ShowMessage(XMLDocParser.ParseError.Reason); end; Mfg Alaitoc |
Re: XML laden,bearbeiten,speichern,validieren (MSXML 4.0)
Habs hinbekommen indem ich zweimal geladen habe, falls ein Fehler erkannt wurde...und ich beim
zweiten Mal dann ValidateOnParse deaktiviert habe. Etwas unschön, aber funktioniert. MfG Alaitoc |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:16 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