- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Qt中数据类型相互转化以及字符串截取
string 与QString转化
std::string cstr;
QString qstring;
//****从std::string 到QString
qstring = QString(QString::fromLocal8Bit(cstr.c_str()));
//****从QString 到 std::string
cstr = string((const char *)qstring.toLocal8Bit());
Qt中 QString 和int, char等的“相互”转换
Qt中 int ,float ,double转换为QString
有两种方法
1.使用
QString::number();
如:
[cpp]view plaincopyprint?
long a = 63;
QString s = QString::number(a, 10); // s == quot;63quot;
QString t = QString::number(a, 16).toUpper(); // t == quot;3Fquot;
(解释,变量a为int型或者float,double。10和16为进制) toUpper是大写
2.使用
[cpp]view plaincopyprint?
long a = 63;
QString s = QString(quot;%1quot;).arg(a);
这个嘛,我不常用
把QString转换为 double类型
方法1.
[cpp]view plaincopyprint?
QString str=quot;123.45quot;;
double val=str.toDouble(); //val=123.45
方法2.很适合科学计数法形式转换
[cpp]view plaincopyprint?
bool ok;
double d;
d=QString(quot;1234.56e-02quot;).toDouble(amp;ok); //ok=true;d;12.3456.
把QString转换为float形
1.
[cpp]view plaincopyprint?
QString str=quot;123.45quot;;
float d=str.toFloat(); //d=123.45
2.
[html]view plaincopyprint?
QString str=quot;R2D2quot;;
bool ok;
float d=str.toFloat(amp;ok); //转换是被时返回0.0,ok=false;
把QString形转换为整形
1.转换为十进制整形
注意:基数默认为10。当基数为10时,并且基数必须在2到36之
间。如果基数为0,若字符串是以0x开头的就会转换为16进制,若以0开头就转换为八进制,否则就转换为十进制。
[cpp]view plaincopyprint?
Qstring str=quot;FFquot;;
bool ok;
int dec=str.toInt(amp;ok,10); //dec=255 ; ok=rue
int hex =str.toInt(amp;ok,16); //hex=255;ok=true;
3.常整形转换为Qstring形
[cpp]view plaincopyprint?
long a =63;
QString str=QString::number(a,16); //str=quot;3fquot;;
QString str=QString::number(a,16).toUpper(); //str=quot;3Fquot;;
Qstring 转换char*问题!
方法一:
[cpp]view plaincopyprint?
QString qstr(quot;hello,wordquot;);
const char * p = qstr.toLocal8Bit().data();
方法二:
[cpp]view plaincopyprint?
const char *p = qstr.toStdString().data();
转换过来的是常量
把当前时间转化为QString...
public QDateTime qdate = QDateTime.currentDateTime();
datetime = qdate.toStri
您可能关注的文档
最近下载
- 监控报价清单表-监控报价模板.xlsx VIP
- (2025秋新版)人教版二年级数学上册全册教案.doc
- 2026年河北水利发展集团有限公司公开招聘工作人员41名笔试模拟试题及答案解析.docx VIP
- 未成年人网络保护条例知识竞赛试题(含答案).docx VIP
- 2025高中信息技术课标.docx
- AS NZS 61000.4.3-2013 国外国际规范.pdf VIP
- _2025年证券专项《证券投资顾问》必背100句.pdf VIP
- 《无机非金属材料》全册完整教学课件.pptx VIP
- _2025年证券专项《证券投资顾问》超高频考点汇总.pdf VIP
- 在线网课学习课堂《医学信息素养(广州医大)》单元测试考核答案.docx VIP
文档评论(0)