Qt中QString、int、char、QByteArray、std::string【八大转换】

本文详细介绍了在C++ Qt环境下各种字符串类型的相互转换方法,包括int与QString、char与QString、QString与QByteArray等之间的转换,以及如何避免乱码问题,是Qt开发者进行字符串操作的重要参考资料。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、int 转 QString

//int 转 QString 
int m=1; 
QString b; 
b=QString::number(m)

2、QString 转int 

QString a=”1111” 
int b; 
b=a.toInt()

3、char 转换为 QString

 

char a=’b’; 
QString str; 
str=QString(a);

上面这种转换方式很容易是的char中的文字字符串转QString乱码,有效的方式:

 

char name = "你好";
QString string;
string = QString::fromlocal8bit(name);

4、QString 转换为 char -

QString str=”qq”; 
char *ch; 
ch = str.toLatin1.data();//或ch = str.toLocal8bit().data();

5、char * 与 const char *的转换 

char *ch1=”tt”; 
const char *ch2=”qq”; 
ch2 = ch1;//不报错,但有警告 
ch1 = (char *)ch2;

6、QByteArray 转换为 char * 

 

由字节数组(QByteArray)转字符串:

 

char *ch;//不要定义成ch[n]; 
QByteArray byte; 
ch = byte.data();

char * 转换为 QByteArray 
char *ch; 
QByteArray byte; 
byte = QByteArray(ch);

7、QString 转换为 QByteArray 

QByteArray byte; 
QString string; 
byte = string.toAscii();

QByteArray 转换为 QString 
QByteArray byte; 
QString string; 
string = QString(byte); 
示例: 
qDebug()<<”qq”; 
qDebug()<

8、QString和string互转 

QString s2q(const string &s) 
{ 
   return QString(QString::fromLocal8Bit(s.c_str())); 
}

string q2s(const QString &s) 
{ 
   return string((const char *)s.toLocal8Bit()); 
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值