À (at) Tue, 7 Feb 2006 13:57:19 +0100, "s.Müller" écrivait (wrote):
J'ai le code suivant: open OUT,'>file.bin'; print OUT '+',chr(10),'+'; close OUT;
Le dump en hexa de mon fichier file.bin devrait me donner: 2B 0A 2B malheureusement le résultat est: 2B 0D 0A 2B
Pourquoi Perl transforme-t-il le chr(10) en 0D 0A et comment éviter cela ?
Mon petit doigts me dit que vous travaillez sur une plateforme Windows.
La lumière vous viendra de la fonction 'binmode' :
open OUT,'>file.bin'; binmode OUT; print OUT '+',chr(10),'+'; close OUT;
Et pour en savoir plus :
perldoc -f binmode
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
s.Müller
J'ai posté plus vite que mon ombre, désolé. "syswrite" avait momentanément résolu mon problème et je viens de tomber sur "binmode" qui répond à mes questions.
"s.Müller" a écrit dans le message de news: dsa5go$9a0$
Bonjour,
J'ai le code suivant: open OUT,'>file.bin'; print OUT '+',chr(10),'+'; close OUT;
Le dump en hexa de mon fichier file.bin devrait me donner: 2B 0A 2B malheureusement le résultat est: 2B 0D 0A 2B
Pourquoi Perl transforme-t-il le chr(10) en 0D 0A et comment éviter cela ?
Par avance merci. Stéphane
J'ai posté plus vite que mon ombre, désolé.
"syswrite" avait momentanément résolu mon problème et je viens de tomber sur
"binmode" qui répond à mes questions.
"s.Müller" <stephane.muller@laposte.net> a écrit dans le message de news:
dsa5go$9a0$1@shakotay.alphanet.ch...
Bonjour,
J'ai le code suivant:
open OUT,'>file.bin';
print OUT '+',chr(10),'+';
close OUT;
Le dump en hexa de mon fichier file.bin devrait me donner:
2B 0A 2B
malheureusement le résultat est:
2B 0D 0A 2B
Pourquoi Perl transforme-t-il le chr(10) en 0D 0A et comment éviter cela ?
J'ai posté plus vite que mon ombre, désolé. "syswrite" avait momentanément résolu mon problème et je viens de tomber sur "binmode" qui répond à mes questions.
"s.Müller" a écrit dans le message de news: dsa5go$9a0$
Bonjour,
J'ai le code suivant: open OUT,'>file.bin'; print OUT '+',chr(10),'+'; close OUT;
Le dump en hexa de mon fichier file.bin devrait me donner: 2B 0A 2B malheureusement le résultat est: 2B 0D 0A 2B
Pourquoi Perl transforme-t-il le chr(10) en 0D 0A et comment éviter cela ?