当前位置: 首页 > news >正文

四站合一网站制作新奇网站建设

四站合一网站制作,新奇网站建设,app平台有哪些,网络营销工具有哪些?Qt专栏#xff1a;http://t.csdnimg.cn/C2SDN 目录 1.引言 2.原因分析 3.源文件的编码格式修改方法 4.程序内部使用的默认编码格式修改方法 5.QString转std::string的方法 6.总结 1.引言 在编写Qt程序的时候#xff0c;或多或少都可能遇到用QString时候#xff0c;明明… Qt专栏http://t.csdnimg.cn/C2SDN 目录 1.引言 2.原因分析 3.源文件的编码格式修改方法 4.程序内部使用的默认编码格式修改方法 5.QString转std::string的方法 6.总结 1.引言 在编写Qt程序的时候或多或少都可能遇到用QString时候明明自己写的是中文但是在界面上显示出来却是乱码最终的原因都是源代码的文件格式和程序中字符默认的编码方式不匹配造成的。下面就这个原因仔细分析分析。 2.原因分析 默认情况下QtCreator内部的字符编码方式是utf-8vs(如VS2019)内部的字符编码方式是gbk。windows上一般是gbk其他平台一般utf-8。 源代码的文件格式在QtCreator添加的文件(.h、.cpp等)默认都是utf-8编码在vs中添加的文件(.h、.cpp等)默认都是GB2312编码。文件格式可以通过EditPlus、Notepad或其它工具查看下面是Notepad查看到的文件编码方式 当然也可以修改文件的编码格式。 Qt界面内容显示都是通过QString来传值的QString内部使用的Unicode编码特别是有中文时一般使用QString::fromLocal8Bit来加载中文如 QString text QString::fromLocal8Bit(设备属性); 关于QString::fromLocal8Bit的讲解可以查看我的另外一篇博客 QString的toStdString、toLocal8bit和toLatin区别_tolocal8bit tolatin1 tostdstring-CSDN博客 通过上述分析出现乱码来自三方面的原因 1)  源文件的编码格式 2)  程序(QtCreator、VS2019等)内部使用的默认编码格式 3)  QString加载中文的方式 在用QString::fromLocal8Bit或QStringLiteral加载中文的时候保持源文件的编码格式和程序内部默认的编码方式一样就不会出现中文乱码。 Qt6之QStringLitertal源码分析_qstring源码分析-CSDN博客 3.源文件的编码格式修改方法 上面讲了源文件的编码格式可以通过EditPlus、Notepad等工具修改还可以通过VS来修改步骤如下 第一步 第二步 OK。 4.程序内部使用的默认编码格式修改方法 方法1使用QTextCodec #include MainWindow.h#include QApplication #include QTextCodecint main(int argc, char *argv[]) {QApplication a(argc, argv);//设置内部编码方式QTextCodec* codec QTextCodec::codecForName(GB2312);QTextCodec::setCodecForLocale(codec);MainWindow w;w.show();return a.exec(); } 方法2在源码开头添加   #pragma  execution_character_set(utf-8) 如下示例 用预处理命令  #pragma execution_character_set(utf-8)将cpp编码设置为utf-8。 方法3如果在Visual Studio中直接可以使用 /utf-8 选项将源字符集和执行字符集指定为使用 UTF-8 编码的字符集。 它等效于在命令行上指定 /source-charset:utf-8 /execution-charset:utf-8。 设置步骤如下 1)打开项目“属性页” 对话框。 有关详细信息请参阅在 Visual Studio 中设置 C 编译器和生成属性。 2)选择“配置属性”“C/C”“命令行”属性页。 3)在“附加选项”中添加 /utf-8 选项以指定首选编码。 4)选择“确定”以保存更改 。 如下图所示 5.QString转std::string的方法 直接用QString的toStdString就有可能出现中文乱码。 QString转std::string乱码通常是由于编码不一致导致的。Qt默认使用的编码可能是UTF-8而std::string可能默认使用的是系统的本地编码如GBK。 一般使用QString::toLocal8Bit()先将QString转为QByteArray然后使用std::string的构造函数转为std::string。代码如下 QString qStr QString::fromUtf8(你好世界); std::string str qStr.toLocal8Bit().constData(); 6.总结 你们在使用Qt编程的过程中出现过中文乱码的情况吗欢迎留言讨论。 参考 /utf-8将源字符集和执行字符集设置为 UTF-8 | Microsoft Learn
http://www.dnsts.com.cn/news/154133.html

相关文章:

  • 网站建设服务器的搭建方式网站建设初期怎么添加内容
  • 外贸网站品牌官网建设云南外贸建站推广
  • 从做系统后以前的网站打不开了怎么办wordpress wp-polls
  • 建设网站费用明细xampp可以做网站吗
  • 网站备案是免费的吗宝塔一键部署wordpress
  • 手机网站域名如何解析机关网站源码
  • 江苏中小企业网站建设广州最新新闻
  • 四川宜宾建设局官方网站校园官方网站建设的书籍
  • 网站动态链接做Seo怎么办山西省城乡建设厅网站
  • 网站维护需要开封建设教育协会网站
  • 建筑企业网站模板阳江seo网站推广
  • 绵阳网站建站铜陵做网站
  • 做汽车养护的网站中国十大购物网站
  • 国外装饰公司网站恩施seo搜索引擎优化
  • 网站接广告平台wordpress二维码制作
  • 微信公众号 网站开发 2016做网站建设公司crm在线的提升服务
  • 上海专业的网站建网页游戏服务器搭建
  • 电子工程网站有哪些wordpress自动提交
  • 邢台网站建设报价多少钱网站建设时间及简介
  • 网店代运营合同自己如何做网站优化
  • 行业网站模版wordpress 首页 分类
  • 沈阳城市建设学院网站为什么别的电脑能打开的网站我的电脑打不开
  • 美工个人网站个人做电影网站违法吗
  • 用dw做网站结构图wordpress添加 下载文件
  • 最新章节 62.一起来做网站吧ui网页设计公司
  • 网站开发获取报价友情链接怎么做
  • 网站建设ssc源码最新中国室内设计网欧式
  • 网站代做正规品牌网站设计图片
  • 网站制作 佛山哪个外包公司比较好
  • 怎么给网站做优化编程猫官网