[Linux-programlama] Re: Python ile MySQL'e yazarken karakter kodlama hatası?

---------

[Linux-programlama] Re: Python ile MySQL'e yazarken karakter kodlama hatası?

From: ANIL KARADAÄž <anil.karadag_at_gmail.com>
Date: Wed, 4 Feb 2009 14:29:50 +0200
Message-ID: <f89a5eb80902040429i3a5cbdb3xfa2d6c11ce6de432@mail.gmail.com>

Selamlar,

2009/2/3 Mucibirahman Ä°LBUÄžA <mucip.ilbuga_at_gmail.com>

> Selamlar,
> Önce girilen her metine aşağıdaki kodu uygulayarak utf-8 yaptım (sanırım?);
> *def getUnicode(word):
> return unicode(word,'cp1254')*
>

Bu kullanım word ifadesini utf-8 yapmaz. cp1254 windows1254 dur. Ve bunların
encoding haritaları farklıdır.

Encoding islemlerin dikkat etmeniz gereken bazı seyler vardır Bunlar, kod
dosyasınızda eğer türkçe karakterli stringler kullanacaksanız dosyanın en
basında
*# -*- coding: utf-8 -*-* ifadesini yazmalısınız. Dosya yazıp okuyacaksanız
sistem diliniz neyse ona gore islem yapılmalıdır.

Veri tabanında data alıp islerken ve yine db ye data atarken veri
tabanınızın charsetine, connection charsetine gore yapmalısınız.

Bir dosyadan utf-8 data okuyup charset i utf-8 olan bir tablonuza datayi
atmak istediginizde *data.encode("utf-8") *yapmalısınız.

>
> Daha sonra Listbox'a da yazarken;
>
> **
>
>
> Kolay gelsin,
> Mucip:)
>
>
>
> Aydın ŞEN yazmış:
>
>
> Bu defa alınan hata:
>> L.insert(END, str(row[1]) + ' '*60 + "-" + str(row[0]))
>> UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-9:
>> ordinal not in range(128)
>>
>> Kolay gelsin,
>> Mucip:)
>>
>>
> bir önceki mailinizde cp1254 karakter seti kullandığınızı belirtmişsiniz,
> aşağıdaki satırı şu [1] şekilde değiştirirseniz düzelir diye düşünmekteyim.
>
> [1]
> L.insert(END, str(row[1].encode("cp1254")) + ' '*60 + "-" +
> str(row[0].encode("cp1254")))
>
>
> --
> Aydın ŞEN
>
> Ege Ãœniversitesi
> Uluslararası Bilgisayar Enstitüsü
>
> ------------------------------
>
> _______________________________________________
> Linux-programlama mailing listLinux-programlama@liste.linux.org.trhttp://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>

-- 
Anıl KARADAĞ
Cihan Bilişim A.Ş. - Yazılım Geliştirme Uzmanı
GYTE- Bilgisayar Müh. Yüksek Lisans öğrencisi
http://anilkaradag.info/blog

_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Wed 04 Feb 2009 - 13:21:14 EET

---------

Bu arsiv hypermail 2.2.0 tarafindan uretilmistir.