将QString转换为char *
来源:互联网 发布:网络十大禁书全文阅读 编辑:程序博客网 时间:2024/06/05 00:56
官方说明:
How can I convert a QString to char* and vice versa ?(trolltech)
Answer:
In order to convert a QString to a char*, then you first need to get a latin1 representation of the string by calling toLatin1() on it which will return a QByteArray. Then call data() on the QByteArray to get a pointer to the data stored in the byte array. See the documentation:
See the following example for a demonstration:
int main(int argc, char **argv)
{
QApplication app(argc, argv);
QString str1 = "Test";
QByteArray ba = str1.toLatin1();
const char *c_str2 = ba.data();
printf("str2: %s", c_str2);
return app.exec();
}
Note that it is necessary to store the bytearray before you call data() on it, a call like the following
const char *c_str2 = str2.toLatin1().data();
will make the application crash as the QByteArray has not been stored and hence no longer exists.
To convert a char* to a QString you can use the QString constructor that takes a QLatin1String, e.g:
QString string = QString(QLatin1String(c_str2)) ;
注意在调用QByteArray.data()之前,必须要先显示储存这个bytearray。像这样const char *c_str2 = str2.toLatin1().data();
会使程序崩溃,因为QByteArray没有被储存,调用data()前是不存在的,必须先显式调用一次toLatin1(),再调用data()。
要将char*转换成QString,用接收QLatin1String作参数的QString构造函数就可以了:
QString string = QString(QLatin1String(c_str2)) ;
- 将QString转换为char *
- 将QString转换为char *
- 将QString转换为char *
- char 转换为 QString
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- 如何将QString转换为char *或者相反
- .NET MVC 分页以及增删查改
- swift语言新特性:可选值
- [转]Vc中API函数ShellExecute与ShellExecuteEx用法
- 员工管理系统(完整版)
- angularjs和jquery在CRUD上的区别
- 将QString转换为char *
- ip首部校验和计算
- windows下,java环境变量的设置,设置点击startup.bat启动tomcat
- Hibernate映射实体类自动导入方法
- php生成圆角图片
- Linux文本处理之如何比较很长的字符串
- Oracle系统视图及说明
- 监控openfire数据
- 进行一个robotium的测试项目需要注意的问题