QT 下把编辑框内的中文字符转换为 char*
Posted 朝闻道
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT 下把编辑框内的中文字符转换为 char*相关的知识,希望对你有一定的参考价值。
第一种方法
QString str(tr("你好"));
wchar_t wc[100] = {0};
pEditShortDes->text().toWCharArray(wc);//关键1
char cStr[100] = {0};
size_t Convert = 0;
setlocale(LC_ALL, ".936");//关键2
wcstombs_s(&Convert,cStr,50,wc,50);
QString str1(tr(cStr));
第二种方法(要求必须在中文系统下,其它系统将会失败)
QString str(tr("你好"));
char cStr[100] = {0};
strcpy(cStr,(const char*)str.toLocal8Bit());
ShowInfo(tr(cStr));
经过测试
经过以上两步,可保证中文信息不会丢失
http://blog.csdn.net/zhangxiaonanwin/article/details/6091945
以上是关于QT 下把编辑框内的中文字符转换为 char*的主要内容,如果未能解决你的问题,请参考以下文章
Qt中如何把一个QString类型的字符串转换成char[16]类型的字符串,我想从LineEdit控件中将IP地址提取出来。