User since
2005-01-13
782
Artikel
BenutzerIn
hiho,
hier mein ansatz:
my $file = $ua->get($url);
my $bin = $file->content;
open(FILE, ">", $dirName."/".$fname) or die $!;
binmode(FILE, ':utf8');
print FILE $bin;
close FILE;
beim binmode ist bestimmt die kodierung falsch ... aber was gibt man bei ner .exe datei an?
ich krieg das ding zwar so gespeichert, aber ausführen kann ich sie nicht.
User since
2003-08-08
327
Artikel
BenutzerIn
hast du es mal ohne kodierungsangabe versucht?
User since
2005-01-13
782
Artikel
BenutzerIn
:P Dank dir ... ich hatte in 2 tutorials nur die version mit ner kodierung gefunden ... ohne hats geklappt.
User since
2007-01-09
192
Artikel
BenutzerIn
bezieht sich die kodierung nicht ausschliesslich auf zeichensatz-basierte dateien?
.exe-Dateien sind doch Binärdaten, da machts doch gar keinen Sinn, irgendwie rumzukodieren! (?)
User since
2005-01-17
14748
Artikel
Admin1
Quotebinmode FILEHANDLE, LAYER
...
Also, people can set their I/O to be by default UTF-8 encoded Unicode, not bytes.
...
If LAYER is present it is a single string, but may contain multiple directives. The directives alter the behaviour of the file handle. When LAYER is present using binmode on text file makes sense.
Quelle:
http://perldoc.perl.org/functions/binmode.html
Die Doku bringt es mehr oder weniger an den Tag.
Kommt immer darauf an, wie die Daten weiter verabeitet werden.
Allerdings bei einer ausführbaren DOS-EXE-Datei ist die Angabe des Layers sinnlos.