从包含 QString 的变量中生成 unicode
我有 QPlainTextEdit 字段,其中包含包含国家字符(iso-8859-2)的数据。
tmp = self.ui.field.toPlainText() (QString type)
当我这样做时:
tmp = unicode(tmp, 'iso-8859-2')
我得到的是问号而不是国家字符。如何将 QPlainTextEdit 字段中的数据正确转换为 unicode?
I have QPlainTextEdit field with data containing national characters (iso-8859-2).
tmp = self.ui.field.toPlainText() (QString type)
When I do:
tmp = unicode(tmp, 'iso-8859-2')
I get question marks instead of national characters. How can I convert properly the data in QPlainTextEdit field to unicode?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
正如所说,QPlainTextEdit.toPlainText() 返回应该是 UTF-16 的 QString,而 unicode() 构造函数需要一个字节字符串。下面是一个小示例:
此代码产生以下输出:
希望这有帮助,问候
As it was said QPlainTextEdit.toPlainText() returns QString which should be UTF-16, whereas unicode() constructor expects a byte string. Below is a small example:
this code produces following output:
hope this helps, regards