Prüfen ob xml mit dtd übereinstimmt!
-
Hallo!
Ich habe mehrere Fragen:
1. Ich will eine XML-Datei vorgeben und wenn diese vorhanden ist, soll sie geöffnet werden und wenn nicht, wird eine mit OpenDialog manuell geöffnet.
2. Gibt es eine Funktion/Methode, die prüfen kann, ob die XML-Datei, die ich mit OpenDialog öffne mit einer vorgegebenen dtd zusammenpasst?
Vielen Dank für jegliche Hilfe, Annika
-
1. FileExists() + ggf. TOpenDialog
2. Wenn Du die mitgelieferte Klasse IXMLDocument verwendest, kannst Du mal mit der Eigenschaft ParseOptions rumexperimentieren.
Ich habe allerdings selbst auch noch keine Erfahrung damit.
3. Es sorgt in diesem Forum oftmals nicht für Begeisterungsstürme, wenn man mehr als eine Frage pro Thread stellt
Gruß,
Alexander
-
zu Frage 1:
AnsiString account = GetCurrentDir() + AnsiString("\\Ergebnisdaten\\"); //GetCurrentDir <-- ermittelt das verzeichnis wo die *.exe drin ist AnsiString FileName = (Now().FormatString("yymmdd")); AnsiString Fileending = ".log"; if(FileExists(account + FileName + Fileending)) { //FileExists schaut einfach nach ob der in () angegebenen wert existiert.. } else { CreateDir(...) //CreateDir erstell ein verzeichnis.. wird dir aber egal sein, wa :D }have a nice day..
|23|
-
Super!

Vielen Dank!Das FileExists hätte ich jetzt mal gelöst, aber ihr habt auch keine andere Idee wie ich die dtd abprüfen kann, oder?
Parseoptions, habe ich mir auch schon angeschaut, denke aber nicht, dass es das Richtige ist, werde es aber jetzt ausprobieren!
Annika
-
|23| schrieb:
AnsiString account = GetCurrentDir() + AnsiString("\\Ergebnisdaten\\"); //GetCurrentDir <-- ermittelt das verzeichnis wo die *.exe drin istWenn man die Diskussionen hier im Forum ein wenig verfolgt, könnte man zu der Erkenntnis kommen, dass GetCurrentDir() nicht unbedingt
das Verzeichnis zurückliefert, in dem die *.exe drin ist.
Allgemein sollte man hierfür etwas in der Art verwenden:AnsiString ExePath = ExtractFilePath(Application->ExeName);Gruß,
Alexander