gpt4 book ai didi

python - 从包含 QString 的变量生成 unicode

转载 作者:太空狗 更新时间:2023-10-29 21:09:07 25 4
gpt4 key购买 nike

我有 QPlainTextEdit 字段,其中的数据包含国家字符 (iso-8859-2)。

tmp = self.ui.field.toPlainText() (QString type)

当我这样做时:

tmp = unicode(tmp, 'iso-8859-2') 

我得到的是问号而不是民族字符。如何将 QPlainTextEdit 字段中的数据正确转换为 unicode?

最佳答案

正如所说 QPlainTextEdit.toPlainText() 返回应该是 UTF-16 的 QString,而 unicode() 构造函数需要一个字节字符串。下面是一个小例子:

tmp = self.field.toPlainText()
print 'field.toPlainText: ', tmp

codec0 = QtCore.QTextCodec.codecForName("UTF-16");
codec1 = QtCore.QTextCodec.codecForName("ISO 8859-2");

print 'UTF-16: ', unicode(codec0.fromUnicode(tmp), 'UTF-16')
print 'ISO 8859-2: ', unicode(codec1.fromUnicode(tmp), 'ISO 8859-2')

此代码产生以下输出:

field.toPlainText: test ÖÄ это китайский: 最主要的

UTF-16: test ÖÄ это китайский: 最主要的

ISO 8859-2: test ÖÄ ??? ?????????: ????

希望这对你有帮助,问候

关于python - 从包含 QString 的变量生成 unicode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4281116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com