Vw1g.png

在使用QT的过程中,经常会用到一些类型的转换,虽然简单,但是却容易忘,做个笔记记录下来。

1、unsigned char []=>QStringunsigned char []=>QByteArray


/**********声明****************/
unsigned char Serial_num[256];
QString conv_serial_QString;
QByteArray conv_serial_QByteArray;

/********************************/

QString conv_serial_QString = QString::fromLocal8Bit((char*)Serial_num);

QByteArray conv_serial_QByteArray((char*)Serial_num, int size);

2、QByteArray 可视化打印,常用于接收字符显示

QByteArray bytes;
QByteArray serial_send;

//将 QByteArray 类型 16进制打印;
ui->textBrowser->appendPlainText(serial_send.toHex());

//将 QByteArray 类型 10进制打印;
ui->textBrowser->appendPlainText(serial_send.toInt());

//将 QByteArray 类型 UTF-8类型打印;
ui->textBrowser->appendPlainText(QString::fromUtf8(bytes));

3、QByteArray => QStringQByteArray => unsigned char*

QByteArray server_crt_base64;
unsigned char *server_crt;

// QByteArray => QString;
QString string = QString::fromUtf8(server_crt_base64);

// server_crt_base64 => unsigned char *
server_crt = (unsigned char *)server_crt_base64.data(); 

4、BASE64 编码、接码;

QString str;
QByteArray bytes;
QByteArray encode;
QByteArray decode;

str = "hello world";

QByteArray encode = str.toLocal8Bit().toBase64();   // 编码

decode = QByteArray::fromBase64(encode);        //BASE64 解码

5、最简单的窗口

#include <QMessageBox>
#include <QApplication>

//标准格式:

QMessageBox::information(NULL, "窗口标题", "窗口内容", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);

//简化格式,只用于弹窗提示作用

//提示窗口;
QMessageBox::information(this, "提示","连接成功!");

//警告窗口 
QMessageBox::warning(this, "警告","注册失败!");

//错误窗口
QMessageBox::critical(this, "错误","操作终止!");

//问题窗口 
QMessageBox::question(this, "未知","未知问题!");

//关于窗口 
QMessageBox::about(this, "关于","SoftWare Version v1.0");

//窗口是可以带HTML标签的,例如:

QMessageBox::about(this, "About", "About this <font color='red'>application</font>");
最后修改:2019 年 09 月 20 日
您的支持就是我持续更新的动力!