Message30718
The csv module does not accept data to write/read as anything other than ascii-or-utf-8 str, and the do-it-yourself example in the Python 2.5 Manual to write in another encoding is extremely clunky:
1) convert unicode to utf-8
2) use csv on utf-8 with cStringIO output
3) convert utf-8 to unicode
4) convert unicode to target encoding (may be utf-8...)
So clunky as to be a bug - csv clearly can't handle unicode at all. The module functions are in dire need of either accepting unicode objects (letting the output stream worry about the encoding, like codecs.StreamWriter), or at the very least accepting data directly in a target encoding instead of roundabout utf-8.
To read another encoding is a bit less onerous than writing:
1) wrap file to return utf-8
2) use csv, getting utf-8 output
3) convert utf-8 to unicode object
Anyone willing to fix the csv module? |
|
Date |
User |
Action |
Args |
2007-08-23 14:50:24 | admin | link | issue1606092 messages |
2007-08-23 14:50:24 | admin | create | |
|