Thread if(-e $file) und Umlaute..
(22 answers)
Opened by GoodFella at 2007-01-16 17:12
Hab auch mal ein TestScript geschrieben:
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 use Tk; use strict; my $top = MainWindow->new(); my @types =( ['All files', '*'], ['CSV files', '.csv'], ['Excel files', '.xls'] ); my $value = $top->getOpenFile( -filetypes => \@types, -initialdir => '.' ); my $check = $value; utf8::downgrade($value); if (-e $value) { print "value existiert\n"; } else { print "value existiert nicht\n"; } if (-e $check) { print "check existiert\n"; } else { print "check existiert nicht\n"; } print ord($_).':' for(split(//,$value)); print "\n"; print ord($_).':' for(split(//,$check)); print "\n"; print "$value\n$check"; Liefert: Quote Habe dann nachgeforscht, warum es das erste Mal nicht ging.. Mein Hauptscript schreibt $value in eine Listbox und holt den Wert von da wieder heraus; ist wohl unterwegs das encoding wieder verloren gegangen. Schreibe ich utf::downgrade direkt vor den Dateitest, gehts :) Danke. Fragt sich, woran ich den Unterschied in der Kodierung erkennen kann, an den chr() Codes jedenfalls nicht, denn die sind gleich.\n\n <!--EDIT|GoodFella|1169021578--> |