我是靠谱客的博主 光亮耳机,最近开发中收集的这篇文章主要介绍QString 分割字符串时产生乱码的问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

QString 提供了字符分割的封装函数split,我所用到的原型如下:

QStringList split(const QString &sep, SplitBehavior behavior = KeepEmptyParts,
                      Qt::CaseSensitivity cs = Qt::CaseSensitive) const Q_REQUIRED_RESULT;

参照声明可以发现,使用时无特殊要求传入第一个分割标识即可,按照分割标识分割后返回的子串存储在一个QStringList当中。包含有汉字时,此处经常发现类似

       QStringList tInfo = strMembers.split("n");
这样操作之后,tInfo中的带汉字的子串乱码,转码无效,无法复原。

应对该情况的解决方案如下:

  QStringList tInfo = KsSysConfig::g_pCodec->toUnicode(strMembers.c_str()).split("n");

其中g_pCodec是自定义的一个汉字转码接口,分割之前一定要将汉字字符串转化为Unicode再进行分割就不会出现乱码了。

转载于:https://www.cnblogs.com/TTaiAL/p/6722131.html

最后

以上就是光亮耳机为你收集整理的QString 分割字符串时产生乱码的问题的全部内容,希望文章能够帮你解决QString 分割字符串时产生乱码的问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(31)

评论列表共有 0 条评论

立即
投稿
返回
顶部