[python] Čtení z Excelu v češtině

Pavel Kosina geon na post.cz
Pondělí Květen 29 15:40:57 CEST 2006


Martin Jedlička napsal(a):
> Zdravim,
>   pracuju s excelem pres win32com a mam problem s textem v cestine. 
> Pokud mam text v excelu v cestine, tak mi to pri nacteni textu chodi chybu:
> UnicodeEncodeError: 'ascii' codec can't encode character u'\u010c' in 
> position 0: ordinal not in range(128)
> Cetl jsem clanek o cestine na http://www.py.cz/UnicodeEncodeError, ale 
> nevim jak pracovat s Unicode, kdyz mam ten nacteny text v nejake 
> promenne. Jak mam s tim ceskym textem pracovat?
>
>   
Obecně: musíš nejdříve zjistit (třeba i metodou pokus omyl), v kterém 
kodovaní je text v proměnné je uložen. No a pak to převedeš na 
všeobjímající unicode, asi takto:

x=unicode(tvuj_text, "utf-8")
nebo
x=unicode(tvuj_text,"cp1250")

Pak by to mělo jít tisknout i zobrazovat. Pokud to budeš ukládat do 
souboru, je lepší to převést na nějaké obyčejnější kodovani - třeba zpět 
na utf-8 nebo cp1250. Mě to někdy, když jsem ukládal přímo v unicode, 
pak vůbec nešel soubor zobrazit v editorech.

Tipnul bych si u Excelu pod XP na utf-8...

-- 
geon
Pavel Kosina



Další informace o konferenci Python