PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : XML character set



Qudus
07-04-2005, 13:36
hi

Ich habe mit PHP eine simple XML-Datei durch einfaches echo und anschließendem Speichern erstellt, in der ich so ungefähr Folgendes stehen habe:



<?xml version="1.0" encoding="ISO-8859-1"?>
<bilder>
<bild>xxxxxxx</bild>
</bilder>


Wobei das xxxxxxxx durch den Inhalt einer jpeg-Datei ersetzt wird. Da das nicht gültig war, habe ich vor dem Speichern des Bildinhaltes diesen mit base64_encode() encodiert. Wenn ich nun die Datei im Texteditor öffne sieht alles genau so aus wie es das soll. Soweit also kein Problem.

Wenn ich aber die Datei mit expat parse, unterscheidet sich der Inhalt der jpeg-Datei.

Der Unterschied entsteht also beim interpretieren des Node-Values durch expat. Ich vermute nun, dass es etwas mit dem Zeichensatz zu tun hat. Gibt es dafür irgendeine Lösung. Muss ich vielleicht schon beim Schreiben der Datei irgendetwas beachten? Gibt es Techniken, um in XML-Dateien zu schreiben und dabei den ungültige Zeichen automatisch ersetzen zu lassen, so dass ich sie beim Lesen wieder im Originalzustand bekommen?

Ich komme einfach nicht weiter.

Qudus

undefined
07-04-2005, 14:04
Das was du beschreibst hat reichlich wenig mit dem XML Dokument zu tun.
Zu deiner ersten Frage, verwende CDATA wenn du nicht erlaubte Zeichen im Node Value verwenden möchtest.
Zu deinem eigentlichen anliegen, das was an Info wichtig ist fehlt ;)
Wie Speicherst du die Daten, via http und Form Upload oder mit FTP ?
Welche Speichermethode verwendest Progresive oder Basline?
mfg undefined

Qudus
07-04-2005, 16:55
Das was du beschreibst hat reichlich wenig mit dem XML Dokument zu tun.
Zu deiner ersten Frage, verwende CDATA wenn du nicht erlaubte Zeichen im Node Value verwenden möchtest.

Das könnte ich noch probieren. Ich hatte zwar schon Die Roh-Daten des Bildes als CDATA gespeichert und der Firefox hat mit die Datei als "not well-formed" bemängelt. Wenn ich die Daten base64_encodiere klappt es soweit. Aber wenn ich das dann noch als CDATA speichere, könnte es klappen.


Zu deinem eigentlichen anliegen, das was an Info wichtig ist fehlt ;)
Wie Speicherst du die Daten, via http und Form Upload oder mit FTP ?

nein. Einfach nur reinschreiben. Siehe:

Ich habe mit PHP eine simple XML-Datei durch einfaches echo und anschließendem Speichern erstellt,...


Welche Speichermethode verwendest Progresive oder Basline?
mfg undefined

Das kenne ich nicht. Was ist das?

undefined
07-04-2005, 20:48
@well-formed
Hast du KDE ? Dann verwende Quanta, KXML oder Kate, alle haben einen XML Parser der von KDE gestellt wird ;)


<?xml version="1.0" encoding="ISO-8859-1"?>
<bilder>
<bild><![CDATA[ "http://meineuerl/zum.jpg" ]]></bild>
</bilder>