2007/12/24, Enno Schwass <[EMAIL PROTECTED]>: > Hallo > > 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 > Das Einlesen mittels FileStream readOnlyFileNamed: aFile und das > anschliessende Parsen (findTokens: escapedBy:) funktioniert prima. > > Wenn ich aber in renderContentOn: die Daten ausgebe (der Browser > steht auf utf-8) > sehe ich keine Umlaute. Seltsamerweise erscheinen sie, wenn ich im > Browser auf > iso-8859-1 wechsle. Dabei war das Original-File utf-8 und in Squeak > (im Explorer) sehe ich > auch die Umlaute. 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. > Für die Ausgabe benutze ich html text: myText Das ist korrekt. Gruss Philippe > Kann jemand helfen? > > Frohe Weihnachten > Enno > >
