本文介绍了使用QString编码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有可以检测(或解码)字符串编码的Python库?

Is there a Python library which can detect (and perhaps decode) encoding of the string?

我发现,但它给我一个错误,使用:

I found chardet but it gives me an error, using:

chardet.detect(self.ui.TextFrom.toPlainText())
got: = chardet.detect(self.ui.TextFrom.toPlainText())
File .... u.feed(aBuf) File .... 
if self._highBitDetector.search(aBuf):

TypeError: buffer size mismatch

另外:

print type(self.ui.TextFrom.toPlainText())
# <class 'PyQt4.QtCore.QString'>


推荐答案

您需要转换您的将QString 转换为Python字符串,然后将其传递给 chardet 。更改这个:

You need to convert your QString to a Python string before passing it to chardet. Change this:

chardet.detect(self.ui.TextFrom.toPlainText())

到:

chardet.detect(str(self.ui.TextFrom.toPlainText()))

这篇关于使用QString编码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-20 07:29