我有一個奇怪的編碼問題從我的PyQt應用程序到我的mysql數據庫。 我的意思是奇怪的,它在一種情況下工作,而不是在其他情況下,儘管我似乎對所有人都做了完全相同的事情。python和mysql之間的編碼問題
我的過程是這樣的:
我有我寫的可能含有的口音和東西(E,A,E,...)
我得到書面文本的文字有些QFocusOutTextEdit元素:
text = self.ui.text_area.toPlainText()
text = text.toUtf8()
然後將其插入到我的數據庫我做的:
text= str(text).decode('unicode_escape').encode('iso8859-1').decode('utf8')
我還將我的數據庫的字符集,特定的表和表的特定列設置爲utf8。
它正在爲我的文本區域工作,對於其他人而言,它將奇怪的字符放在我的數據庫中。
任何提示讚賞!
已解決: 對於這種干擾感到抱歉,顯然我的數據庫中有一些字段並不是最新的,這阻止了編碼過程。
WOW。編碼爲UTF-8,然後再次解碼並重新編碼,然後再次解碼?也許你最好解釋一下所有這些應用意味着什麼!你不應該能夠簡化這個**一個LOT **嗎? – Celada 2012-01-13 09:30:34
是的,我知道它對我來說也很奇怪。我在一些論壇上看到了這個解決方案,並且出於某種原因,它的工作原理。所以我沒有看得更遠,對編碼問題我不太瞭解。如果你有一個更簡單的解決方案,我會接受它! – Johanna 2012-01-13 09:34:37
你如何將它插入數據庫? – golimar 2012-01-13 09:48:49