使用Qstring时候碰到的一个bug
来源:互联网 发布:网络黑市论坛 编辑:程序博客网 时间:2024/05/19 17:02
if str(self.btn_name.text()).lower == "empty ":
这是代码最早的写法,问了下写这代码的人,才知道这边加上str是因为.btn_name.text()的结果是Qstring,需要str转换为string类型,这样才能调用lower方法。
后来我发现Qstring好像也有lower的方法。
lower后面少了(),可能是疏忽吧。
但是这句话还是报错:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-11: ordinal not in range(128)
明显是编码问题了。
google了一番说Qstring是unicode的,‘empty’是char类型的
所有想用toAscii()转换为ASCII,但是网上找到的质料都说会报错。
而且网络上的质料都是想办法把中文显示出来而已,和我的目标不太一样。
后来听同事说u'aaa' 和‘aaa’比较是相等的,所以直接用unicode和ascii比较:于是用下面的方法把中文转换为utf8编码的字符串,然后调用lower()
if unicode(self.btn_name.text().toUtf8(), 'utf8', 'ignore').lower() == 'empty':
- 使用Qstring时候碰到的一个bug
- 昨晚碰到的一个bug
- 解决 visualmark.vim 碰到的一个BUG
- 关于培训中碰到的一个Bug
- 使用百度编辑器的时候的一个小bug
- TabLayout使用的时候会遇到的一个bug
- 记录使用MAT(Memory Analyzer Tool)时碰到的一个Bug
- [Qt] 使用arg()从double转换到QString的Bug?
- 今天上课的时候碰到一个JS问题
- [转]解决 visualmark.vim 碰到的一个BUG
- 解决 visualmark.vim 碰到的一个BUG(E197)
- 使用LVS的时候碰到的一些问题
- Quarz使用时碰到的一个问题
- 使用 rosmsg时碰到的一个问题
- C++ 在使用CHttpFile进行http通信的时候遇到了一个Bug
- WinCE7碰到的Bug汇总
- vs2010 第一次碰到的bug
- 有关 QString::toStdString() 使用的一个细节问题
- Cocoa,Objective-c开发难点和问题
- 深入浅出SQL之左连接、右连接和全连接
- Monitor.TryEnter方法和lock语句
- VC++动态链接库(DLL)编程深入浅出(zz)
- nand flash地址机制
- 使用Qstring时候碰到的一个bug
- JDK中的设计模式之职责链模式
- Linux 2.6下SPI设备模型
- [IT 男人帮 11-07] 你以为你了解面向对象设计么?
- http://blog.csdn.net/eroswang/article/details/1967243
- 在android 输出log 信息 用于调试
- Win32下动态链接库(DLL)编程原理
- PHP mysql 操作数据库
- 图片控件、图片显示