XML das keins ist zu XML machen - Sonderzeichen

cumulonimbus8

Fleet Admiral
Registriert
Apr. 2012
Beiträge
19.326
Hallo!

Vermutlich ist dies weniger etwas für direktes Programmieren denn für Programmierwerkzeuge - Editoren.

Mir ist etwas auf den Tisch gekommen das eigentlich XML ist. Uneigentlich sind Sonderzeichen offenbar falsch kodiert - Sonderzeichen wie Ü, é, ø, ß, ñ und sogar [ und ].

Ich werfe die »faule« XML (eine Kopie, genau genommen) in den Browser, bekomme einen Fehler in Zeile soundso. In Notepad++ (UTF8 ohne BOM) sichte ich diese Zeile. Da taucht das bewusste Zeichen als maskiertes (z.B. - so wie #13 als CR maskiert ist) xE8 auftauchen. Dann sehe ich mir die selbe (originale) Datei in PsPad an, dort sehe ich das echte Zeichen. Das Zeichen da kopiere ich nach N++ und speichere. PsPad, in dem die Kopie ebenfalls offen ist, zeigt dann dieses recodierte Zeichen als andere Maskierung, z.B. ª, an. Die kommt wieder per Kopieren in die Dateikopie für den Browser (als globales Ersetzen), wird gespeichert und im Browser mit F5 das nächste »Schlagloch« vorgeholt.

Ich habe keine Ahnung wo diese Quelle herkommt, was da codiert wurde (und was nicht). Frei nach MS' XML-Notepad ist es jedenfalls kein ordentliches XML. Hat jemand eine Idee was ich da auf den Tisch bekommen habe und welcher Konverter oder Editor so ein Recodieren fertigbringt?
Sollte ich raten wurde Klartext von einem ungünstigen Editor als XML ausgeworfen und dabei eine Sonderzeichenkodierung in »Irgendwas« vorgenommen, mit unverdaubarem Resultat. Nun muss das wieder umgewurschtelt werden.

Nachtrag: die XML werfe ich in normal Chrome. Da wird nämlich brav auch eine Zeichencodierung in meinem Sinne vorgenommen. Den dann sichtbaren Klartext kopiere ich in eine normale TXT die wiederum an Excel (2000) per VBA-Open verfüttert wird um aus der XML was Nutzbares zu gestalten (direktes Öffnen und Einlesen der XML scheitert justament an den Sonderzeichen..!) Nein, auch XL2010 kann mit den faulen XML-Quellen direkt nichts anfangen, es legt sich exakt an der selben Sonderzeichenstelle quer.

CN8
 
Das, was du da hast, ist XML, nur offensichtlich mit Latin-1-Codierung statt UTF-8. 0xE8 ist jedenfalls kein gültiges Byte in UTF-8.
Kannst du mit Notepad++ irgendwie als Latin-1 (aka ISO/IEC 8859-1) lesen und als UTF-8 speichern? Wenn ja, löst das schon das Problem.
 
Als Latin-1… Mal sehen. Ich kann nur sagen, dass die an der Quelle gepfuscht haben. Andere Files von da waren immer I.O.
Mach ich morgen {oder doch nicht}. Danke für den Vorschlag.
CN8

Ah; scheint zu klappen. in N++ musste ich die Kodierung (Kodierung • Weitere • Westuropäisch) auf ISO 8895-15 ändern und dann (Disk-Symbol ist ausgegraut…) nochmals per Kodierung das dann wieder in UTF-8 konvertieren.
Wäre schön wenn Editoren so was mal on-the-fly könnten…


Und richtig ging es wie folgt…
Kodierung • Weitere • Westeuropäisch • ISO 8859-1
Kodierung • Konvertiere zu UTF-8 ohne BOM
Speichern
XML in Chrome öffnen
Alles markieren
Kopieren
In MetaPad (oder anderem ungefährlichen Editor) einkleben
Speichern
 
Zuletzt bearbeitet:
Zurück
Oben