当前位置: 首页 > news >正文

网站建设技术网站刚做网站和搜出来的不一样

网站建设技术网站,刚做网站和搜出来的不一样,外贸推广建站公司,wordpress 建立相冊QT字节数组类QByteArray 初始化访问某个元素截取字符串获取字节数组的大小数据转换与处理Hex转换数值转换与输出 字母大小写转换字符串数值转化为各类数值QBQyteArray和char*互转QByteArray 和std::string互转与字符串QString互转QByteArray和自定义结构体之间的转化判断是否为… QT字节数组类QByteArray 初始化访问某个元素截取字符串获取字节数组的大小数据转换与处理Hex转换数值转换与输出 字母大小写转换字符串数值转化为各类数值QBQyteArray和char*互转QByteArray 和std::string互转与字符串QString互转QByteArray和自定义结构体之间的转化判断是否为空向前搜索向后搜索插入 初始化 #include myqbytearray.h #include ui_myqbytearray.h #include QDebug #include QtGlobalMyQByteArray::MyQByteArray(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray) {ui-setupUi(this);qDebug()字节数组类的初始化;QByteArray ba(hello);if(\0ba[5]){printf(ba[5]\\\0\\n);}QByteArray ba2(china);ba2.fill(q);qDebug()ba2;if(\0ba2[5]){printf(ba2[5]\\\0\\n);}ba2.fill(x,2);qDebug()ba2;if(\0ba[5]){printf(new : ba2[5]\\\0\\n);}}MyQByteArray::~MyQByteArray() {delete ui; }字节数组类以 ‘\0’结尾索引的下标从0开始。 第一次调用fill函数不指定size参数按照之前的长度跟新值 第二次调用fill函数指定size参数重新调整字节数组的长度并更新值 访问某个元素 访问QByteArray类对象的某个元素有4种方式 []at()data[]constData[] 其中[]和data[]可读可写at()和constData[]只读、 MyQByteArray2::MyQByteArray2(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray2) {ui-setupUi(this);QByteArray ba1(hello);ba1.resize(10);ba1[0] a;ba1[1] b;ba1[2] c;ba1[3] d;ba1[4] e;ba1[5] f;ba1[6] g;ba1[7] h;ba1[8] i;//ba1[9] j;qDebug()ba1;if(\0ba1[10]){printf(ba1[10] \\\0\\n);}ba1[1]a;ba1.data()[2] a;qDebug()ba1;qDebug()ba1.at(1);qDebug()ba1.constData()[2];qDebug()ba1.constData()[3];}截取字符串 使用函数 left() right() mid()来提取多个字节。 MyQByteArray3::MyQByteArray3(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray3) {ui-setupUi(this);QByteArray x(pineapple);QByteArray y1 x.left(4);qDebug()y1;QByteArray y2 x.right(5);qDebug()y2;QByteArray y3 x.mid(2,4);qDebug()y3;QByteArray y4 x.mid(2);qDebug()y4;}获取字节数组的大小 成员函数size(),length(),count()来获得字节数组的大小除了名字不同这3个函数是相同的 int size()int length()int count() size()不包括字符串末尾添加的 ‘\0’ 如果以字符串形式初始化中间有‘\0’则不统计后面的字符。 如果改变中间的字符为‘\0’并不会被size()截断 MyQByteArray4::MyQByteArray4(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray4) {ui-setupUi(this);QByteArray b4(hello);int n1 b4.size();int n2 b4.size();int n3 b4.size();qDebug()n1 n2 n3 ;b4.data()[3]\n;qDebug()b4.size();QByteArray b41(he\0llo);qDebug()b41.size(); }数据转换与处理 Hex转换 QByteArray::fromHex() 将16进制编码的数据转换为字符类型的数据。 .toHex() 将字节数组中字符转换为十六进制的数值编码。 MyQByteArray5::MyQByteArray5(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray5) {ui-setupUi(this);QByteArray text1 QByteArray::fromHex(517420697320677265617421);qDebug()text1.data();QByteArray text2 text1.toHex();qDebug()text2.data(); }数值转换与输出 QByteArray类的公有静态函数number完成十进制到其他进制的转换。 调用静态成员函数 int n 63;qDebug()QByteArray::number(n);qDebug()QByteArray::number(n,16);qDebug()QByteArray::number(n,2);qDebug()QByteArray::number(n,8);QByteArray类的的公有函数setNum() qDebug()ba;ba.setNum(n,16);qDebug()ba;ba.setNum(n,8);qDebug()ba;ba.setNum(n,2);qDebug()ba;QByteArray::number 将小数按指定格式的小数位转换输出。 QByteArray ba1 QByteArray::number(12345.6,E,3);QByteArray ba2 QByteArray::number(12345.6,e,3);QByteArray ba3 QByteArray::number(12345.6,f,3);QByteArray ba4 QByteArray::number(12345.6,g,3);QByteArray ba5 QByteArray::number(12345.6,G,3);qDebug()ba1;qDebug()ba2;qDebug()ba3;qDebug()ba4;qDebug()ba5;字母大小写转换 函数toUpper和toLower完成字母大小写转换。 QByteArray x(hello QT );qDebug()x.toLower();qDebug()x.toUpper();字符串数值转化为各类数值 字符数值转化为各类型数值to函数。 QByteArray strint(1234);bool ok0;qDebug()strint.toInt();qDebug()strint.toInt(ok0,16);qDebug()ok0;qDebug()strint.toInt(ok0,8);qDebug()ok0;qDebug()strint.toInt(ok0,2);qDebug()ok0; //由于字符串中存在234等大于2的值所以不能转化为二进制qDebug()---------;QByteArray strint2(1234.56);qDebug()strint2.toInt();qDebug()strint2.toFloat();qDebug()strint2.toDouble();qDebug()---------;QByteArray str(FF);bool ok2;qDebug()str.toInt(ok2,16);qDebug()str.toInt(ok2,10); //字符串中存在F,超过了10和8进制的表示范围。qDebug()str.toInt(ok2,8);QBQyteArray和char*互转 使用.data()成员函数返回指向字节数组中存储数据的指针。 返回一个指向字节数组的指针指向第一个字符。 MyQByteArray8::MyQByteArray8(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray8) {ui-setupUi(this);QByteArray ba(hello world);char* data ba.data();while(*data){cout *data;data;}coutendl;free(data); }QByteArray 和std::string互转 QByteArray的类成员函数toStdString() QByteArrayd的静态成员函数fromStdString() MyQByteArray9::MyQByteArray9(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray9) {ui-setupUi(this);QByteArray b1(hello);string s2 b1.toStdString();QByteArray b2 QByteArray::fromStdString(s2); }与字符串QString互转 MyQByteArray10::MyQByteArray10(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray10) {ui-setupUi(this);QByteArray arr(hello world! );QString str arr;qDebug()str;qDebug()------------;QString str2 (hello);QByteArray ba str2.toLatin1();qDebug()ba; }QByteArray和自定义结构体之间的转化 定义结构体不能再类中。。。。 根据char*数据和结构体之间的映射实现结构体和QByteArray之间的转化。 array.append((char*)msg,sizeof(msg));typedef struct Header{int channel;int type; }Header;typedef struct Msg{Header header;char content[128];//友元函数 operatorfriend QDebug operator (QDebug os, Msg msg){os ( channel: msg.header.channel type: msg.header.type content: msg.content );return os;} }Msg;typedef struct PeerMsg {PeerMsg(const int ip,const int por) {ipv4 ip;port por;}int ipv4;int port;//友元函数 operatorfriend QDebug operator (QDebug os, PeerMsg msg){os ( ipv4: QString::number(msg.ipv4) port: QString::number(msg.port) );return os;} }PeerMsg;void func(){Msg msg;msg.header.channel 1000;msg.header.type2;strcpy(msg.content,hello);qDebug()msg;PeerMsg peermsg(1921681001,10086);qDebug()peermsg;qDebug()struct to QByteArray;QByteArray array;array.append((char*)msg,sizeof(msg));Msg* pMsg (Msg*)array.data(); //将结构体转换为QByteArrayqDebug()*pMsg;qDebug()QByteArray to struct;QByteArray totalByte;totalByte.append((char*)peermsg,sizeof(peermsg));PeerMsg* pPeerMsg (PeerMsg*)totalByte.data(); //将结构体转换为QByteArrayqDebug()*pPeerMsg;}判断是否为空 .isEmpty() MyQByteArray11::MyQByteArray11(QWidget *parent) :QWidget(parent),ui(new Ui::MyQByteArray11) {ui-setupUi(this);qDebug()QByteArray().isEmpty();qDebug()QByteArray(ss).isEmpty();}向前搜索向后搜索 .indexof() 从前向后 .lastIndexOf 从后向前 QByteArray x(sticky question);QByteArray y(sti);qDebug()x.indexOf(y);qDebug()x.indexOf(y,6);qDebug()x.indexOf(y,10);qDebug()x.indexOf(y,11);qDebug()x.lastIndexOf(y);qDebug()x.lastIndexOf(y,8);插入 QByteArray ba(Meal);ba.insert(2,hello);qDebug()ba;
http://www.zqtcl.cn/news/862782/

相关文章:

  • 浙江国泰建设集团有限公司网站ps软件下载电脑版免费怎么下载
  • 昆明网站建设价格自力教育
  • 黄冈网站推广软件视频下载孝感做网站xgsh
  • 用jsp做一网站的流程图互联网博客网站
  • 南宁一站网 给网站做营销微网站和网站同步像素
  • 如何建设一个视频小网站软件做网站
  • 小企业网站建设公司哪家好网站怎样设计网页
  • 那个网站做搬家推广比较好wordpress twenty eleven
  • 微站图片临淄信息网招聘最新信息
  • 投诉举报网站建设方案宠物网站 模板
  • 生小孩去什么网站做登记有特点的个人网站
  • 汉中市住房和城乡建设局网站学网站建设需要什么
  • 深圳网站建设外包公司排名网络引流怎么做啊?
  • 关于做暧暧的网站php 网站授权
  • 网站上添加子栏目wordpress群组
  • 一站式手机网站制作有没有代做ppt的网站
  • 西安火车站网站建设网站的设计需要什么
  • 弹幕网站开发代码欧洲人喜欢什么样的服务器
  • 有哪些做壁纸的网站好ftp如何备份网站
  • 网站如何推广出去wordpress foopen
  • 网站空格键代码台州椒江网站建设公司
  • node 网站开发 视频教程汉阳网站推广
  • 广西新农村建设工作专题网站怎样创建公司网站
  • 中国十大招商平台谷歌优化软件
  • 做任务领黄钻的网站中国采购网招标公告
  • 网站建设三层架构实训报告德阳市网站建设
  • 有免费建网站opencms wordpress
  • 行业网站做的好的wordpress要有数据库
  • 重庆智能网站建设哪里好怎么在微信做企业网站
  • 甘肃建设局网站丰都网站建设公司