首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

求教qt从串口中得到一串数据,怎么从中获取指定数据

2014-01-12 
求教qt从串口中得到一串数据,如何从中获取指定数据在用qt制作串口时,碰到这样一个问题:将数据从缓存区读出

求教qt从串口中得到一串数据,如何从中获取指定数据
在用qt制作串口时,碰到这样一个问题:将数据从缓存区读出,转化成字符串,然后用.mid()函数获得指定数据,但获得的数据有问题。求各位大侠传授一个好的方法
代码如下

    QByteArray temp = myCom->readAll();
    QString buf;
    QString str1;
    

    /*十六进制数据显示

    for(int i = 0; i < temp.count(); i++){
        QString s;
        s.sprintf("0x%02x ", (unsigned char)temp.at(i));
        buf += s;
    }

    ui->textEdit->append(buf);
    QTextCursor cursor = ui->textEdit->textCursor();
    ui->textEdit->insertPlainText(temp);
    cursor.movePosition(QTextCursor::End);
    ui->textEdit->setTextCursor(cursor);
    */

    buf =temp.trimmed();
    str1 = buf.mid(3, 3);
   
    ui->textEdit->append(str1);

[解决办法]
注意类型的转换
[解决办法]
串口过来的数据是文本还是二进制,如果是文本可以直接 mid,如果是二进制就要格式化成字符串
[解决办法]
使用QSocketNotifier吧,没那么麻烦了!

热点排行