[Python-Dev] [python] Re: New lines, carriage returns, and Windows
Michael Foord
fuzzyman at voidspace.org.uk
Sat Sep 29 20:47:20 CEST 2007
Steven Bethard wrote:
> On 9/29/07, Michael Foord <fuzzyman at voidspace.org.uk> wrote:
>
>> Terry Reedy wrote:
>>
>>> There are two normal ways for internal Python text to have \r\n:
>>> 1. Read from a file with \r\r\n. Then \r\r\n is correct output (on the
>>> same platform).
>>> 2. Intentially put there by a programmer. If s/he also chooses default \n
>>> translation on output, \r<translation of \n> is correct.
>>>
>>>
>> Actually, I usually get these strings from Windows UI components. A file
>> containing '\r\n' is read in with '\r\n' being translated to '\n'. New
>> user input is added containing '\r\n' line endings. The file is written
>> out and now contains a mix of '\r\n' and '\r\r\n'.
>>
>
> Out of curiosity, why don't the Python wrappers for your Windows UI
> components do the appropriate '\r\n' -> '\n' conversions?
>
One of the great things about IronPython is that you don't *need* any
wrappers - you access .NET objects natively (which in fact wrap the
lower level win32 API) - and the .NET APIs are usually not as bad as you
probably assume. ;-)
You just have to be aware that line endings are '\r\n'. I'm not sure how
or if pywin32 handles this.
Michael
> STeVe
>
More information about the Python-Dev
mailing list