Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » XML-Datei mit Xerces parsen/einlesen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
18.10.2005, 15:15 Uhr
Kai



Hallo!

ich habe schon ewig im INternet nach Lösungen gesucht, aber ich komm einfach nicht weiter, ich möchte eine XML-Datei mit C++ öffnen, auslesen und bearbeiten/speichern.

Zuerst wollte ich erstma eine Datei öffnen bzw parsen, aber ich bekomms nicht hin. Dachte ich könnte die "*.hpp" bzw "*.cpp" einfach als include angeben und dann kann cih die Bibliotheken verwenden. habe jetz aber auch versucht über dem Projekt hinzufügen->Dateien die libs hinzuzufügen, auch das hat nicht geholfen.

hier mal mein COde (zumindest das was interessant ist):
#include <xalanc/Include/PlatformDefinitions.hpp>
#include <xercesc/util/PlatformUtils.hpp>
#include <xercesc/dom/DOM.hpp>
#include <xercesc/dom/DOMDocument.hpp>
#include <xercesc/dom/DOMWriter.hpp>
#include <xercesc/parsers/XercesDOMParser.hpp>

XMLPlatformUtils::Initialize();
XalanTransformer::initialize();
XalanTransformer theXalanTransformer;

XercesDOMParser parser; //<==== rename the IDOMParser
parser.parse(m_strXmlPath);

also natürlich nur sehr wenig Code. aber er sagt mir bei XercesDOMParser "'XercesDOMParser' : nichtdeklarierter Bezeichner"

Wäre super, wenn mir jmd einen TIpp geben könnte, sitz scho ewig an dem Problem ((((
Gruß Kai
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.10.2005, 19:15 Uhr
Spacelord
Hoffnungsloser Fall


Schau dir mal die Namespace Qualifizierer von Xerces an.
Setz mal nen XERCES_CPP_NAMESPACE_QUALIFIER vor den entsprechenden Xerces Datentyp.Dann sollte der eigentlich bekannt sein.
Und hier ist noch nen Link zu nem PDF.Schau da mal ab seite 252(das ganze Dokument schadet bestimmt auch nicht ).
http://xml.apache.org/xerces-c/pdf/xerces-c.pdf

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.

Dieser Post wurde am 18.10.2005 um 19:16 Uhr von Spacelord editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
19.10.2005, 10:05 Uhr
~Kai
Gast


Hey danke

es geht! naja zumindest zeigt er mir keinen Fehler mehr beim Kompilieren an, wobei er beim Ausführen linkerfehler anzeigt. hab jetz ma einen Teil scho ma auskommentiert und da meint er dass ich die dlls einbinden muss. Has du ne Ahnung wie das geht?

Wäre super, wenn mir noch n Tipp geben könntest
Gruß Kai
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
19.10.2005, 12:42 Uhr
~Kai
Gast


Ich bins nochma hab jetz über Projekt->Einstellungen Registerkarte Debug->Zusätzliche DLLs die dll eingebunden - naja ob dsa so richtig war, weiß ich nciht wirklich - hab da alle dlls die es bei Xalan und Xerces gibt ma eingebunden. war viell falsch?! ich weiß es nicht.

habe jetz aus der DOkumentation xerces-c.pdf auf seite 201/202 ein DOMParser-Bsp gesehn und wollte das parsen ma testen-habe den Code übernommen und wenn ich das jetz kompiliere, zeigt er beim ausführen ganz wilde Meldungen an. Den Code kopier ich jetz mal nicht rein aber ein paar der Fehlermeldungen.

Was hab ich falssch gemacht? was könnte dsa Problem sein?
Bitte gebt mir einen Tipp - ich bin echt ratlos.
Gruß Kai

es sind 78Fehlermeldungen insgesamt-hier die ersten 5:
TestDlg.obj : error LNK2001: Nichtaufgeloestes externes Symbol "public: virtual void __thiscall xercesc_2_7::AbstractDOMParser::handleAttributesPSVI(unsigned short const * const,unsigned short const * const,class xercesc_2_7::PSVIAttributeList
*)" (?handleAttributesPSVI@AbstractDOMParser@xercesc_2_7@@UAEXQBG0PAVPSVIAttributeList@2@@Z)
TestDlg.obj : error LNK2001: Nichtaufgeloestes externes Symbol "public: virtual void __thiscall xercesc_2_7::AbstractDOMParser::handlePartialElementPSVI(unsigned short const * const,unsigned short const * const,class xercesc_2_7::PSVIElement *)
" (?handlePartialElementPSVI@AbstractDOMParser@xercesc_2_7@@UAEXQBG0PAVPSVIElement@2@@Z)
TestDlg.obj : error LNK2001: Nichtaufgeloestes externes Symbol "public: virtual void __thiscall xercesc_2_7::AbstractDOMParser::handleElementPSVI(unsigned short const * const,unsigned short const * const,class xercesc_2_7::PSVIElement *)" (?han
dleElementPSVI@AbstractDOMParser@xercesc_2_7@@UAEXQBG0PAVPSVIElement@2@@Z)
TestDlg.obj : error LNK2001: Nichtaufgeloestes externes Symbol "public: virtual void __thiscall xercesc_2_7::AbstractDOMParser::TextDecl(unsigned short const * const,unsigned short const * const)" (?TextDecl@AbstractDOMParser@xercesc_2_7@@UAEXQ
BG0@Z)
TestDlg.obj : error LNK2001: Nichtaufgeloestes externes Symbol "public: virtual void __thiscall xercesc_2_7::AbstractDOMParser::startExtSubset(void)" (?startExtSubset@AbstractDOMParser@xercesc_2_7@@UAEXXZ)
Spec1000DDlg.obj : error LNK2001: Nichtaufgeloestes externes Symbol "public: virtual void __thiscall xercesc_2_7::AbstractDOMParser::startIntSubset(void)" (?startIntSubset@AbstractDOMParser@xercesc_2_7@@UAEXXZ)
....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
19.10.2005, 12:50 Uhr
~Kai
Gast


Hm super hab jetz n anderes Projekt geöffnet und jetz wieder das problematische und jetz kommt wieder die Fehlermeldung mit der dll - gebs echt bald auf oh nein das geht ja net!

Naja die Fehlermeldung ist:
Die Anwendung konnte nicht gestartet werden, weil xerces-c_2_7_0.dll nicht gefunden wurde. Neuinstallatino der Anwendung könnte dsa Problem beseitigen!

denke jetz doch nicht, dsas es was bringt, da die xerces..dll bei der INstallation doch eh nicht erstellt wird.

Gruß Kai
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
19.10.2005, 22:31 Uhr
Spacelord
Hoffnungsloser Fall


Hi,
im Regelfall solltest du bei der Installation von Xerces in der PATH Variablen den Pfad zum bin Unterverzeichnis deiner Xercesinstallation eingetragen haben.
Da ist unter anderem die besagte dll drin.
Start->Systemsteuerung->System->Erweitert->Umgebungsvariablen->path(bearbeiten und den Pfad anhängen).
Da das bei deiner Installation offensichtlich nicht geschehen ist,legst du die dll in das Verzeichnis deiner Anwendung oder in den system32 Ordner(wobei man das eigentlich nicht machen sollte!).
Die Dll liegt,wie die lib Dateien, in 2 Versionen vor.Als Debug (mit D) und als release Version.

Naja,und im Programm selbst musst du natürlich die entsprechende xerces-lib einbinden.

Ich hab auch ne Frage:
Wieso gibt sich eine Kathrin den Nick Kai?

Die Domain hinter deiner E-Mail Adresse hört sich ziemlich interessant an.
Machst du da Praktikum?

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
20.10.2005, 14:47 Uhr
~Kai
Gast


Hey

wenn ich die dll ins Verzeichnis mit reinkopier hats jetz funktioniert *danke* Konnte die Umgebungsvariable nämlich nicht setzen, da ich keine Administrationsrechte habe. Ich denke auch dass ich in dem system32-ordner eh keine Schreibrechte gehabt hätte, aber es funktioniert ja. auf die Idee bin ich natürlich nicht gekommen - nur auf die Idee, es in alle Verzeichnisse zu legen, wo andere dlls liegen *lalala*

Wollt mir eigentlich den Nick Kati geben, aber hab mich vertippt *huch* naja und so wurde aus Kati ein Kai und dass hier keiner verwirrt ist, dass mein Nick Kai istu nd ich mit Kati unterschreibe - hab ichs halt dabei belassen und dich doch verwirrt *g*

Ja genau mache da Praktikum und muss da in C++ programmieren, was ich nicht wirklich gut auschecke - habe bisher mit Xalan und Xerces öfter in Java programmiert, aber in C++ nicht. und kenne mich in C++ eh net soooo gut aus

LG Kati
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: