Thread [Tk] File auswählen unicode (31 answers)
Opened by welle at 2013-11-01 20:07

GUIfreund
 2013-12-06 18:07
#172485 #172485
User since
2011-08-08
559 articles
BenutzerIn
[default_avatar]
2013-11-09T21:56:45 Raubtier
2013-11-07T18:28:31 GUIfreund
Code (perl): (dl )
1
2
3
4
use Text::Iconv;
.........
my $converter = Text::Iconv->new('UTF-8', 'iso-8859-1');
$initfile = $converter->convert($initfile);


Wie kommst du eigentlich auf iso-8859-1? Was ist, wenn dein Dateiname das Euro-Zeichen enthält? Ich würde mal stark vermuten, dass Windows-1252 die richtige Wahl wäre. Wobei ich es schon irgendwie komisch finde, dass du iconv bemühen musst und es nicht mit Encode funktioniert.

In der DOS-Konsole schalte ich mit chcp 1252 um. Damit erreiche ich, dass die Umlaute richtig angezeigt werden. Dafür brauche ich kein Encode.

Im Kode ging es um die Umwandlung eines von der Tk-Methode getOpenFile gelieferten Dateipfades für die Weitergabe an open(). iso-8859-1 erwies sich da als brauchbar. Hätte ich das €-Zeichen gebraucht, hätte ich vermutlich UTF16 nehmen müssen.

iconv wurde mir von bianca empfohlen, nachdem bei der Umstellung von Win XP nach Win 7 Encode nicht mehr funktionierte. Für mich hatte es den Vorteil, dass es meldet, wenn man unsinnige Kombinationen verwendet. Generell ist es wohl nützlich, wenn man Dekodieren und Kodieren muss. Inzwischen funktioniert bei mir auch Encode wieder - frag mich nicht, was da los war.
Gruß
GUIfreund

View full thread [Tk] File auswählen unicode