Thomas Heller:
> Hm, I don't know. I try to avoid converting questionable characters at
> all, if possible. Then, it seems the error-mode doesn't seem to change
> anything with "mbcs" encoding. WinXP, Python 2.4.2 on the console:
>
>>>> u"abc\u034adef".encode("mbcs", "ignore")
> 'abc?def'
>>>> u"abc\u034adef".encode("mbcs", "strict")
> 'abc?def'
>>>> u"abc\u034adef".encode("mbcs", "error")
> 'abc?def'
>
> With "latin-1", it is different:
Yes, there are no 'ignore' or 'strict' modes for mbcs. It is a
simple call to WideCharToMultiByte with no options set. 'ignore' may
need two calls with different values of the default character to allow
identification and removal of default characters as any given default
character may also appear naturally in the output. 'strict' and 'error'
would be easier to implement by checking both the return status and
lpUsedDefaultChar which is set when any default character insertion is done.
The relevant code is in dist\src\Objects\unicodeobject.c.
Neil
--
http://mail.python.org/mailman/listinfo/python-list