2011-01-27 4 views
1

Y a-t-il un moyen de modifier le caractère de fin de ligne pour un format perl?Formats et caractères de fin de ligne

J'ai besoin de sortir un fichier au format DOS et il semble que l'écriture n'obéit pas à ce qui est dans la variable $ \.

+0

Wow, quelqu'un en utilisant effectivement [ 'write'] (http://perldoc.perl.org/functions/write.html) (pour [forms] (http://perldoc.perl.org/perlform.html))? Sauf si vous voulez dire ['syswrite'] (http://perldoc.perl.org/functions/syswrite.html), c'est plutôt rare ces jours-ci. – ephemient

+0

Oui, c'est celui-là. Triste mais vrai. Je sais que je devrais utiliser Perl6 :: Form pour créer les formats, mais les conditions étaient simples et la politique complexe pour installer le module afin que le format soit le plus simple. –

Répondre

6

Je suppose que vous essayez de le faire sur une plate-forme non-Windows?

Vous avez juste besoin: couche CRLF sur votre descripteur de fichier, par exemple:

open FOO, "> :crlf", "foo.txt" or die "error: $!"; 
format FOO= 
hi 
there 
. 
write FOO; 

Vous pouvez appliquer des couches aux handles existantes en utilisant binmode:

binmode STDOUT, ":crlf"; 
Questions connexes