QByteArray队列中找校验码

QT串口通信中,我用了一个大容量的QByteArray[1024000]用于存储从串口中读取的数据(回环队列),我所需要的数据包每个都是是以0Xac开头的(0xac就是校验码), 问现在我怎么能找到这个头,我知道array[0]=0xac可以,但if(0xac==array[no])却不可以(no是我定义的一个int类型的读指针),请大神赐教

1个回答

indexOf 我自己找到的

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
QString、QByteArray
对QByteArray还不是很熟悉,比如我QByteArray data; (data里面是一串字符,例如:#123456@456789¥45321),我想将这些字符分开来,分成:char a= #123456、char b= @456789、char c = ¥45321,怎么分呢??我用的是QT3..痛苦中。。!!
关于QByteArray中提取数据
有如下数据包格式(16进制)rnEA X1 X2 Y1 Y2 Z1 Z2 SUM AErnrnEA包头,固定rnrnX1,X2为一个16位的二进制补码数(X2高八位,X1低八位)rnY1,Y2为一个16位的二进制补码数(Y2高八位,Y1低八位)rnZ1,Z2为一个16位的二进制补码数(Z2高八位,Z1低八位)rnrnSUM=X1+X2+Y1+Y2+Z1+Z2rnrnAE包尾,固定rnrn现在读出串口读出一段数据,存储在QByteArray中(QByteArray temp = myCom->readAll();)rn如:rnEA EB FF F9 FF 56 00 38 AErnEA E9 FF FD FF 53 00 37 AErnEA E9 FF 00 FF 4C 00 33 AErnrn问题:rn怎么样把里面的XYZ在通过SUM校验正确后,都提取出来?
QByteArray的问题
QByteArray cQ63_f3Len = QByteArray::fromHex(Q63_f3Len.toAscii());rn求解一下这句代码是什么意思?如果要用C语言来重写这句代码的话,应该怎么写?
校验码
海明码,循环冗余码(CRC)校验的原理是怎样的?rn 请高手指点,多谢!rn如有结果请发:szdft@163.net
奇偶校验码,海明校验码,CRC校验码
奇偶校验码 海明校验码 CRC校验码奇偶校验码
校验码之奇偶校验码
校验码之奇偶校验码 在计算机系统中各部件需要进行数据交换,为了确保数据在传送过程中正确无误,我们需要使用校验码来测试数据是否出错。 校验的基本思想:将编码分为合法编码和错误编码。合理的设计编码规则使数据在传送过程中出现某种错误就会变成错误编码。 码距:是指一个编码系统中任意两个合法编码之间至少有多少个二进制位不同。 例如4位8421就是码距为1 有人会问为什么4位8421码的码距为1呢?
数据校验码(奇偶校验码 海明校验码 循环冗余校验码)
数据校验的实现原理:数据校验码是在合法的数据编码之间,加进一些不允许出现的(非法的)编码,使合法的数据编码出现错误时成为非法编码。这样就可以通过检测编码的合法性达到发现错误的目的。
【校验码】数据校验码
计算机系统在进行数据的传输和存储时,难免会发生错误。为了避免这种错误,一方面是从硬件的方面着手,提高硬件的抗干扰能力和可靠性;而另一方面在数据编码上采取编码纠码的措施,使得机器能够自己发现错误甚至纠正错误,我们把这种具有检测错误或带有自动纠错能力的数据编码称为数据校验码。其原理是在数据中加入一些校验位,组成数据校验码,通过检查数据校验码的合法性来判断是否出错或进行纠错。常用的数据校验码有奇偶校验码
校验码在网络中的应用
校验码在网络中的应用,求相关资料,万分感谢
RAID中的同位校验码
RAID中的同位校验码和奇偶校验码有什么区别呢?能否详细些!?
网页中的校验码怎么做?
网页中的校验码是怎么弄的啊?欲求实例
数据类型转换之 QByteArray 与 char*
QByteArray 转换成 char* char *b=a.date(); char* 转换成 QString char *p="abc"; QString c=QString(p);
QByteArray简单入门
Qt通过QByteArray为我们提供了一个字节数组容器。QByteArray既可以用来存储原始的字节,包括'\0',也可以用来存储传统的8-bit 的以'\0'结尾的字符串。使用QByteArray比使用普通的const char* 更方便。并且,在底层,它可以确保其中存储的数据以'\0'结尾,并且通过隐式共享(写时拷贝)策略去减少内存的使用和不必要的数据复制。 当然,除了QByteArray
请教一个QByteArray的问题
QDataStream sendOut(&outBlock, QIODevice::WriteOnly);rnQString currentFileName = fileName.right(fileName.size() - fileName.lastIndexOf('/') - 1);rn sendOut << qint64(0) << qint64(0) << currentFileName;rn这里outBlock的大小是怎么算的?
Java 生成校验码及校验码判断
使用java生成校验码,并把校验码的生成与使用放到web项目中,里面有详细的使用说明及源代码
QString 转 QByteArray ?
这个QString 转 QByteArray ,网上看了些,但问题还是没解决,rn假如:rnrnQByteArray byte;rnbyte.append(0x68).append(0x65).append(0x6c).append(0x6c).append(0x6f);rnQString::fromAscii(byte.data());rnqDebug()<
QByteArray怎么分片传输?
传入的数据是QByteArray 类型,怎么把这个QByteArray分片通过socket传送?rn[code=C/C++]void CTcpServer::send(qint64 numBytes)rnrnrn m_bytesWritten += numBytes;rn if(m_bytesToWrite > 0)rn rn //应该怎么写?rn m_tcpClient->write(m_outBuffer);rn rn[/code]
QByteArray存入int类型
在QByteArray中村入int类型,并且要求占四个长度,我通过下面的方式:rnQByteArray bytes;rnint iCount = 200;rnbytes.append(QByteArray::number(iCount));rn发现最后bytes.size()是3,好像是存的是字符“200”;rnint 占四个字节,我希望它存进入也占四个字节,我用下面的方法:rnbytes.append(QByteArray::number(iCount,2));rn发现存的也是二进制的字符串,如:“1001010”,size也是这个字符串的长度,不是我想要的,rn我该怎么操作呢?
Qt :图片与QByteArray互转
1 将图片转为QByteArray传输 QBuffer buffer; buffer.open(QIODevice::ReadWrite); //pixmap不能为空,必须先将图片加载到pixmap中 pixmap.save(&buffer,"jpg"); QByteArray pixArray; pi
校验码学习,详细的校验码学习
校验码学习,详细的校验码学习校验码学习,详细的校验码学习
QByteArray与QString之间的相互转换
QByteArray转QStringQByteArray qStr = "hello"; QString str(qStr);QString转QByteArrayQString str = "hello"; QByteArray qStr = str.toLatin1();
Qt下QByteArray的使用
今天遇到一个问题,想要实现一种功能:在QLineEdit中书写16进制字符串比如 00 01 ff,然后保存为16进制转换后的字节形式到内存中,然后在文件中进行查找字符串匹配,后来发现QByteArray QByteArray::fromHex(const QByteArray & hexEncoded)函数可以实现这个功能。QByteArray QByteArray::fromHex(const
QByteArray使用方法举例
QByteArray使用方法举例 下面给出简单例子,用于入门。     QByteArray qByteArray(&quot;&quot;) ; //定义一个空QByteArray对象,记住括号内要有“”,否则所无效对象。     qByteArray.append(&quot;daniel&quot;); //后面添加字符串     qDebug()&amp;lt;&amp;lt;&quot;qByteArray = &quot;&amp;lt;&amp;lt;qByteAr...
QByteArray Qstring 编码
我现在要从多方取汉字(utf-8编码)数据,一是从char型数组中获取汉字(直接转换为qstring),另一个是QByteArray从字码表文件中获取汉字在转化为qstring,因为最终的数据要存在qstring链表中,现在遇到的问题是总有一方显示是乱码:加上QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));后从码表获得汉字是乱码,不加从树组里获得汉字是乱码!rnrn大侠给点方法吧!!!
数据校验码(奇偶校验码 海明校验码 循环冗余校验码)下载
数据校验的实现原理:数据校验码是在合法的数据编码之间,加进一些不允许出现的(非法的)编码,使合法的数据编码出现错误时成为非法编码。这样就可以通过检测编码的合法性达到发现错误的目的。
串口通信之 QByteArray详解
QByteArray在串口通讯中经常被使用,有一定必要较为全面详细的对QByteArray进行阐述。本文通过以下几个部分加以介绍 1 初始化 2 访问与赋值    访问QByteArray主要有4中方式,分别为[]、at()、data[]和constData[]。其中[]和data[]为可读可写,at()和constData[]仅为可读。如果仅是读,则通过at()和constData[]访问...
QByteArray、QString、QString
对QByteArray还不是很熟悉,比如我QByteArray data; (datajf里面是一串字符,例如:#123456@456789¥45321),我想将这些字符分开来,分成:char a= #123456、char b= @456789、char c = ¥45321,怎么分呢??我用的是QT3..痛苦中。。!!rn
QT下int与QByteArray的转换
QByteArray 转int int bytesToInt(QByteArray bytes) { int addr = bytes[0] &amp;amp; 0x000000FF; addr |= ((bytes[1] &amp;lt;&amp;lt; 8) &amp;amp; 0x0000FF00); addr |= ((bytes[2] &amp;lt;&amp;lt; 16) ...
QString与QByteArray 各种类型互转
QString 转QByteArray QString qstr = &quot;waixingren&quot;; QByteArray  qbyteStr = qstr.toLatn1(); QByteArray转QString QByteArray  qbyteStr = “waixingren”; QString qstr=&quot;&quot;; qstr.append(qbyteStr); QString转char*...
数据类型转换之 QByteArray与QString
QByteArray cstr("abcd"); QString s = cstr; QByteArray cstr("abcd"); QString s; s.prepend(cstr); QString s("hello"); QByteArray cstr = s.toAscii(); QString s("hello"); QByteArray cstr = s.toLatin1();
数据类型转换之 QByteArray转QPixmap
QByteArray转QPixmap QByteArray bytes = reply->readAll(); QPixmap p; p.loadFromData(bytes); ui->label->setPixmap(p);
QString转QBytearray中文乱码
rnQString string;rn...........rnrnQByteArray byte = string.toLatin1(); //string 非乱码,但QByteArray 乱码了。rn rnQByteArray byte = string.toUtf8(); //string 非乱码,但QByteArray 乱码了。rnrnQByteArray byte = string.toLocal8Bit(); //string 非乱码,但QByteArray 乱码了。rnrn问题:QString转QBytearray,怎样才能中文不乱码?谢谢!!
如何查看文件的md5校验码、sha1校验码和sha256校验码
如何查看文件的md5校验码、sha1校验码和sha256校验码 本文是基于Windows 10系统和ubuntu 14.04系统环境,使用命令查看文件的md5校验码、sha1校验码和sha256校验码: Windows 10 Ubuntu 14.04 Windows命令 进入cmd命令终端,键入如下的命令 # 查看文件的md5校验码 certutil -hashfile filename...
从qbytearray中提取部分数据
第一次在csdn论坛上发帖,还请各位大牛多多指教。rn实在是卡在这里好几天了,也没弄出来,恳求各位大侠请点一下小弟,谢谢了。rn问题描述如下:rn从外部已经读取数据进来了: QByteArray temp = myCom->readAll(); 读取进来的数据都放在了temp中,但是,我只想要其中的一部分数据,比如全部读取进来的数据是11111111111111111111100100010111111111111111111111,我只要其中的从0开始那几位,其他的都不要,我曾经试过把temp改成数组形式的temp[1000],然后查找第一个0出现的位置number,,之后,用temp.mid(number,8)的方式来提取这几位数据,但是,不成功。rn现在,就卡在这里好几天了,上网找了很多资料,由于小弟愚笨,都没能解决,所以,恳请大侠出手相救,谢谢了。
QByteArray保存为QImage错误
QByteArray response(networkReply->readAll());rn if(response.isEmpty())rn out<<"response is empty"<< "\n";rnrn QImage img;rn bool beLoad = img.loadFromData(response);rn if(!beLoad)rn out<<"the image load false"<< "\n";rnrn输出:rn out<<"the image load false"<< "\n";rnrnrnrn也就是说response不为空,但是img的loadFromData调用后,img却为空,是什么原因呢?
QT图片与QByteArray转换
QT图片与QByteArray转换 #include "MainWindow.h" #include #include #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { this->setFixedSize(500,500);
QByteArray 和 int的转换
如题rn我查到有一个叫QByteArray::number()的函数,但经过实验,它是把int转换成字符串再转换成字节数组的rnrn而我的目标是把int转换成一个32位的字节数组,就像在内存中一样rnrnrn还有一个QByteArray::toInt()函数,但是经我实验,貌似也是用来把字符串转换成int的rnrnrn求QT中把int转换成一个32位的QByteArray的方法(还有转换回来的方法).........最好是QT中的函数,这样可读性比较好
整型和浮点型与QByteArray的转换
文章目录QByteArray整型 &lt;==&gt; QByteArray浮点型 &lt;==&gt; QByteArray QByteArray The QByteArray class provides an array of bytes. Qt 手册中描述 QByteArray 为 字节数组 ,即是一个数组,里面保存字节。 在 Qt 中,QByteArray一般用于数据的传输,因为经常...
QT笔记:QByteArray的使用
** QT笔记:QByteArray的使用 ** 1.QByteArray可以用来存储原始二进制字节和8-bits字符,一般在需要传输原始数据和内存资源短缺时使用(嵌入式linux Qt) 2.QByteArray存储的是char型字符,继承自QMemArray,但QByteArray提供的数组操作,比char更方便 3.QString转Qchar时,需要经过 QByteArray,不能用下面的转...
QByteArray 转为 int 详细说明
QByteArray 转为 int 详细说明 QByteArray有提供toInt()函数将 QbyteArray中的数据转为int类型。文章中涉及到的int类型都是4个字节。 toInt()用法: 1、QByteArray保存的是字符串,直接调用 toInt() 就可以了: bool ok; QByteArray arr(&amp;amp;amp;amp;quot;ABCDEF&amp;amp;amp;amp;quot;); arr.toInt(&amp;amp;amp;amp;amp;a
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数