首页 > 其他分享 >QString 传递带中文的参数

QString 传递带中文的参数

时间:2023-03-03 11:22:47浏览次数:34  
标签:编码 中文 const char 参数 QString Unicode 编码方案

编码了解

欧洲 ISO-8859 系列中使用最广泛的是 ISO-8859-1,就是我们常常听说的 Latin-1 编码 因为这个子集收录了欧洲绝大多数的常用字符。
中国 最初的 GB 编码是 GB2312,后来扩展成了 GBK,再后来继续扩展成了 GB18030。这样所有的标点符号、简体中文、少数名族语言、生僻字等都能表示了。
台湾 台湾是 BIG5,也就是繁体字编码。

全世界90%的国家都有了自己的编码方案,而当时 Windows 操作系统是主流操作系统,为了方便统一称呼,微软把这些非英语系的、兼容 ASCII 编码的、互相不兼容的字符编码统称为 “ANSI编码”
于是乎,统一的编码方案诞生了。当时有两个:Unicode 和 UCS。一山不容二虎,本来目的就是统一字符编码,所以当时制作这两个编码方案的人会互相进行整合对方的方案,所以到了 Unicode 2.0版本时两家的方案基本保持了一致。现在两种方案都在使用,只不过 Unicode 用的更加广泛

参考:https://zhuanlan.zhihu.com/p/44991378

QString相关点

QString 类存储的字符串默认是 Unicode

来自 char* 的数据 - 默认被当作 UTF-8 编码格式   QString converts the const char * data into Unicode using the fromUtf8() function.

用 QChar 构建的 QString - 会进行深拷贝

作为参数传递带中文的参数

通过QString   不会出现问题

通过const char* 会出现问题       因为QString通过char*构造时默认当做UTF-8编码而不是Unicode

当通过const char* 传递带中文的参数时需要以下处理:

QTextCodec *code = QTextCodec::codecForName("GB2312");

QString str = code->toUnicode(argv[i]);

argv[i]:为 char*类型

 

标签:编码,中文,const,char,参数,QString,Unicode,编码方案
From: https://www.cnblogs.com/henkk/p/17174756.html

相关文章

  • 获取Url后面参数JS工具
    getQueryString(name){letparameters=location.href.split('?')[location.href.split('?').length-1];letaps=parameters.split('&');......
  • pheatmap实用参数(一)
    Createtestmatrixtest=matrix(rnorm(200),20,10)test[1:10,seq(1,10,2)]=test[1:10,seq(1,10,2)]+3test[11:20,seq(2,10,2)]=test[11:20,seq(2,......
  • unittest的参数化parameterized
      importunittest,parameterizedimportBeautifulReport#数据驱动#代码驱动#关键字驱动data=[['admin','123456',True,'正常用户登录'],['admin','1......
  • QT 使用QSetting读取配置文件中的中文乱码
    转载:https://www.shuzhiduo.com/A/kmzL3jjKdG/windows下方案:读配置文件之前添加以下语句:settings.setIniCodec(QTextCodec::codecForName("UTF-8"));//在此添加编码格式......
  • #yyds干货盘点 【React工作记录三】React中如何跳转页面传参(参数较短)
     目录​​前言​​​​需求​​​​ 总结​​前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他......
  • #yyds干货盘点 【React工作记录四】React中如何跳转页面传参localStorage和sessionSto
     目录​​前言​​​​需求​​​​ 解决方案​​前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超......
  • 【NodeJS】【pm2】加参数运行
    nodeindex.jsarg1arg2pm2startindex.js--arg1arg2上面两个等价 获取参数process.argv返回一个数组如下:['/usr/bin/node','/usr/lib/node_mod......
  • KingbaseES 的oracle兼容性参数
    KingbaseES用户可通过设置相关的数据库兼容参数,部分或全部启用Oracle兼容特性。常用的兼容性参数有以下这些:参数名称参数说明ora_forbid_func_polymorphism是......
  • KingbaseES 服务器运行参数配置
    Kingbase服务器运行参数配置说明:KingbaseES数据库中,服务器运行参数配和需改有多种方式和注意事项,根据不同的分类配置,修改配置方式不同。关于服务器参数分类请参照【Kin......
  • KingbaseES 服务器运行参数分类
    Kingbase服务器运行参数分类说明:KingbaseES数据库中,服务器运行参数分为多种类型,有些是系统初始化时设置,有些可以在系统运行时设置,有些可以在运行session中进行直接设置......