in reply to Re: create separate output files based on the matched values
in thread create separate output files based on the matched values

Are you sure you will get CR LF at the line end on every system? read perldoc perlport:
       In most operating systems, lines in files are terminated by newlines.
       Just what is used as a newline may vary from OS to OS.  Unix tradition-
       ally uses "\012", one type of DOSish I/O uses "\015\012", and Mac OS
       uses "\015".

       Perl uses "\n" to represent the "logical" newline, where what is logi-
       cal may depend on the platform in use.  In MacPerl, "\n" always means
       "\015".  In DOSish perls, "\n" usually means "\012", but when accessing
       a file in "text" mode, STDIO translates it to (or from) "\015\012",
       depending on whether you're reading or writing.  Unix does the same
       thing on ttys in canonical mode.  "\015\012" is commonly referred to as
       CRLF.


$\=~s;s*.*;q^|D9JYJ^^qq^\//\\\///^;ex;print

Replies are listed 'Best First'.
Re^3: create separate output files based on the matched values
by GrandFather (Saint) on Sep 27, 2005 at 23:44 UTC

    I don't think that the line endings are a particular problem for the OP. The trick is generating the various output files.

    However replacing the syswrite with:

    my $fh = $files{$name}; print $fh "$data\n";

    fixes the problem. What do you expect from a reply written before morning coffee :).


    Perl is Huffman encoded by design.