Qestion on Encoding and Decoding.

Reply

Join Date: Jan 2006
Posts: 237
Reputation: katharnakh is an unknown quantity at this point 
Solved Threads: 33
katharnakh's Avatar
katharnakh katharnakh is offline Offline
Posting Whiz in Training

Qestion on Encoding and Decoding.

 
0
  #1
Nov 13th, 2006
Hi all,

Platform: winxp
Version: Python 2.3

I have a task of reading files in a folder and creating an one excel
file with sheets, one sheet per file, with sheet named as filename. I
am facing problem in handling special characters. I am using XLRD and
XLW package to read/write from/to file. But facing problem in handling
special characters. I am getting encode error.

UnicodeDecodeError 'ascii' codec can't encode character u'\xdf' in
position 19: ordinal not in range(128)
row: 76

the cell value at rowx = 76, colx = 0 is
'Activest-Aktien-Großbritannien'

I used Latin-1 encoding, but after the file is created I get an error
'Unable to read the file'.

When I get the exception I want to format the string so that I can use
it to write to a file and also query database.

Can anybody guide how to solve this problem. what encoding I should
use, and after wring to file I should the same special character.

Also python IDLE is able to output the same character corretly when I
say print and why not I?

Any suggestions would be greatly appreciated.

thanks.
regards,
kath.
Reply With Quote Quick reply to this message  
Join Date: Jul 2005
Posts: 1,221
Reputation: bumsfeld will become famous soon enough bumsfeld will become famous soon enough 
Solved Threads: 137
bumsfeld's Avatar
bumsfeld bumsfeld is offline Offline
Nearly a Posting Virtuoso

Re: Qestion on Encoding and Decoding.

 
0
  #2
Nov 14th, 2006
For German characters I have found it simpler to replace them with acceptable equivalents. Here is an example:
  1. # -*- coding: iso-8859-15 -*-
  2.  
  3. str1 = 'Activest-Aktien-Großbritannien'
  4. print str1 # test
  5. str1 = str1.replace('ß', 'ss')
  6. print str1 # test
  7.  
  8. str2 = 'Überländliche Fracht'
  9. print str2
  10. str2 = str2.replace('Ü', 'Ue')
  11. str2 = str2.replace('ä', 'ae')
  12. print str2
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Similar Threads
Other Threads in the Python Forum
Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC