I've beaten myself up on similar line termination problems. It's really something that's poorly documented if u ask me. I think part of ur confusion comes from the fact that there's 3 layers involved that have nothing to do with each other. \n is the system local new line sequence, which only happens to usually be a line feed, ^J. $\ is only something that is optionally tacked on to the end of a print command. Nothing to do do with \n. So far so good. Now there's the file handle STDOUT, which translates ^M's and ^J's into whatever the system local newline convention is, *for the benefit of the terminal*. Because the terminal has it's own expectations of what constitutes a new line, perl beats it's output into whatever the local system expects. If I'm being extra cautious I don't even use \n, I'll call for \cM or \cJ directly. So in summary, just do what Bill said, use binmode. ;)
At 11:51 PM 2/23/05 -0700, [EMAIL PROTECTED] wrote: >problem. PERL for Win32 writes the line terminators as CRLF (0x0d0a), and >the UNIX-based program blows up reading the "unexpected character" CR. What >we want to do is write LF (0x0a) as the text-file termination character. > Simple, no? -- REMEMBER THE WORLD TRADE CENTER ---=< WTC 911 >=-- "...ne cede males" 00000100 _______________________________________________ Perl-Win32-Users mailing list Perl-Win32-Users@listserv.ActiveState.com To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs