Frage

Ich habe ein Problem mit einem SAX XML -Parser. Ich möchte eine XML-Datei analysieren, die offensichtlich nicht gültig ist (ich erhalte einen ExpatParser $ parseException: in Zeile 5, Spalte 169: Nicht gut geformt (ungültiges Token)). Ich weiß, was los ist, aber die XML -Datei ist nicht von mir erstellt ... also kann ich sie nicht ändern.

Jetzt möchte ich diesen Fehler in meinem Defaulthandler bewältigen. Aber weder error () noch fatalError () noch Warnung () werden aufgerufen ...

Kann ich den Parsingprozess irgendwie unterbrechen, dem Parser sagen, was ich mit diesem ungültigen XML -Stück tun soll, und weiter an Parsen ???

Danke, JPM

War es hilfreich?

Lösung

Ich würde vermuten, dass diese SaxparseException a ist fataler Fehler dass sich der SAX -Parser nicht erholen kann. In diesem Fall müssen Sie wahrscheinlich das schlechte Tag reparieren, bevor Sie versuchen, es zu analysieren (wie Robert in seinem Kommentar vorschlägt).

Möglicherweise möchten Sie eine Java -Regex verwenden, um die bekannte Schlechtigkeit in der XML zu reparieren, z. B.
Regex zum Zitieren von nicht zitierten XML -Attributen

Für die Aufzeichnung bin ich nicht Verfassen von Verwendung Regex, um XML tatsächlich zu analysieren!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top