Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Tue, 6 Nov 2001 08:54:25 +0100 From: "Gerrit P. Haase" Reply-To: "Gerrit @ cygwin" Organization: Esse keine toten Tiere X-Priority: 3 (Normal) Message-ID: <1711732771373.20011106085425@familiehaase.de> To: Mikael Hubsch CC: cygwin AT cygwin DOT com Subject: Re: Perl 5.6.1: Problem with CRLF/LF conversions In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Sender: 320081107336-0001 AT t-dialin DOT net Hallo Mikael, Am Dienstag, 5. November 2002 um 14:41 schriebst du: > I'm trying to port a framework of perl scripts to cygwin. I'm running > cygwin 1.3.14 on WinXP. The problem is that perl seems to assume binmode > whenever I read a file, but text mode when I write to one. > The sample code below shows the problem. > If I write a line to a file with a LF-only ending, perl (or cygwin) adds a > CR. When I later read the same line from the file the CR isn't removed. > Is there some special option I need to set to make perl always assume text > mode unless I explicitly use the binmode command? > #!/usr/bin/perl -w > open(F, "> foobar.txt") || die "Cannot create foobar.txt"; > print F "Line1\n"; > print F "Line2\n"; > close F; > open(F, "< foobar.txt") || die "Cannot open foobar.txt"; > while () { > s/(.)/sprintf("%02x ", ord($1))/ges; > print "$_\n"; > } > close F; > exit 0; Please consider to upgrade Perl to version 5.8, click the 'Exp' radiobutton in setup.exe to load down and install perl-5.8.0 Then you may play with the new PERLIO features, please see: perldoc perlio for details. Gerrit -- =^..^= -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/