XERCES SAX Parser - ignore Whitespace



  • Hallo Zusammen,

    ich habe ein kleines Problem und hoffe es kann mir jemand weiterhelfen.
    Ich möchte eine XML- Datei mit dem besagten Parser (SAX1) parsen.

    Mein Handler besitzt die Methoden StartElement, EndElement, characters.
    Die nicht benötigten Whitespaces, z.B. diese vor einem Starttag, werden jedoch in der Methode characters ausgegeben.
    Dazu habe ich mich auch schon mal ein wenig Informiert, habe aber noch nicht so recht eine Lösung gefunden.
    Ein möglichen Ansatz den ich beim durchstöbern von Internetseiten erhalten habe war folgender:
    Ich setzte in meinem SAX Parser folgende Eigenschaften:
    parser = new SAXParser();

    parser->setDoSchema( true);
    parser->setDoNamespaces( true );
    parser->setValidationScheme( SAXParser::ValSchemes valScheme = SAXParser::Val_Always );

    Mit dieser Lösung wird das XML-File validiert, und der Parser müsste dann wissen, welche Whitespaces eigentlich nicht benötigt werden.

    Anschließend habe ich die Methode ignoreWhitespaces in meinen Handler eingefügt.

    Jedoch ist das Problem immer noch verhanden, dass die nicht benötigten Whitespaces in der Methode characters aufgerufen werden und nicht in der ignoreWhitespaces-Methode.

    Kann mir jemand zu diesem Thema helfen?

    Ich würde mich freuen,

    vielen Dank und viele Grüße



  • Dieser Thread wurde von Moderator/in phlox81 aus dem Forum Andere GUIs - Qt, GTK+, wxWidgets in das Forum C++ (auch C++0x und C++11) verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Log in to reply