Moin

Ich möchte Auszüge aus einer csv-Textdatei (utf-8) in Seaside
anzeigen und
habe Probleme bei der Anzeige von Umlauten.
Für solche Fragen die Seaside Liste:
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

Die Liste lese ich zwar, aber Newbie-Fragen sind vielleicht besser hier
aufgehoben.

Squeak nahm also Konvertierung von utf-8 zu Squeak encoding
automatisch for. Aus dem restlichen Beschreib deines Problems gehe ich
davon aus, das du WAKom und nicht WAKomEncoded(39) verwendest. Mit
WAKomEncoded(39) sollten die Daten im Browser richtig erscheinen.
Welche Version du verwenden musst hängt leider nicht nur von deiner
Squeak version, sondern auf von deiner KomHttpSever version ab.
Wenn du von WAKom auf WAKomEncoded(39) wechselst liefert dir Seaside
alle Strings als Strings mit Squeak encoding (ein character entspriche
einem WideCharacter) erwartet im Gegenzug aber auch, dass du alle
Strings in Squeak encoding lieferst. Das betrifft auch allenfalls
bestehende Daten.
Wenn du das nicht willst und weiter WAKom verwenden willst musst du
die Daten nach utf-8 konvertieren entweder mit:
convertToWithConverter: UTF8TextConverter new
oder auf dem stream
converter: Latin1TextConverter new
(ja das ist richtig, Latin1)
Muss ich vor der Ausgabe irgendwo noch einmal
konvertieren?
Brauche ich asWideString?
#asWideString bringt bei einem Latin1 String rein gar nichts.

Wenn ich dich richtig verstehe, ist das interne Squeak-Encoding latin-1.
Das erklärt die Ausgabe. Ich dachte irrtümlich Squeak wurde irgendwann
von MacRoman auf utf-8 umgestellt.

Da es mit WAKomEncoded39 funktioniert, werde ich nicht weiter konvertieren.

Besten Dank
Enno

Antwort per Email an