最近整理了c/c++ 中各种字符,数组的转化,在此记录一下,如有问题错误还请指出。

/*
*日期:2019.10.16
*功能:多字符转16进制字符串(utf-8)
*参数说明:cGbk[in]:多字符数组(gbk)cUtf8[out]:十六进制字符串(utf-8)
*返回值:
*/
void GBKToUTF8(const char* cGbk, char* cUtf8)
{int len = MultiByteToWideChar(936, 0, cGbk, -1, NULL, 0);wchar_t* wstr = new wchar_t[len+1];memset(wstr, 0, len+1);MultiByteToWideChar(936, 0, cGbk, -1, wstr, len);len = WideCharToMultiByte(CP_UTF8, 0, wstr, -1, NULL, 0, NULL, NULL);WideCharToMultiByte(CP_UTF8, 0, wstr, -1, cUtf8, len, NULL, NULL);delete[] wstr;
}/*
*日期:2019.10.16
*功能:宽字符转多字符
*参数说明:cUtf8[in]:utf-8十六进制数组cGbk[out]:多字节字符串(gbk)
*返回值:
*/
void UTF8ToGBK(const char* cUtf8, char* cGbk)
{int len = MultiByteToWideChar(CP_UTF8, 0, cUtf8, -1, NULL, 0);wchar_t* wstr = new wchar_t[len+1];memset(wstr, 0, len+1);MultiByteToWideChar(CP_UTF8, 0, cUtf8, -1, wstr, len);len = WideCharToMultiByte(936, 0, wstr, -1, NULL, 0, NULL, NULL);WideCharToMultiByte(936, 0, wstr, -1, cGbk, len, NULL, NULL);delete[] wstr;
}

c/c++ utf-8与gbk的互相转化相关推荐

  1. 字符集、字符编码、国际化、本地化简要总结(UNICODE/UTF/ASCII/GB2312/GBK/GB18030)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 环境说明   普通的linux 和 普通的windows.    ...

  2. 编码标准-GB2312 GBK GB18030

    关于 ASCII编码 可以查看我的另外一篇博客 编码标准-ASCII 关于 Unicode 可以参考我的另外一篇博客 Unicode 编码标准-GB2312 GBK GB18030 基本概念 区位码 ...

  3. unicode、utf区别

    字符集 首先,我们要明确2个概念,字符集和字符编码. 字符集:ASCII.GB2312.GBK.Unicode 字符编码:UTF-8.UTF-16.UTF-32 由于ASCII.GB2312.GBK不 ...

  4. python基础知识练习题

    1.执行Python脚本的两种方式 1.在计算机终端(运行cmd),输入安装的Python路径,然后输入Python脚本的路径,回车. 2.直接运行python 2.简述位.字节的关系. 1字节 = ...

  5. PHP 页面编码声明方法详解(header或meta)

    php的header来定义一个php页面为utf编码或GBK编码 php页面为utf编码  header("Content-type: text/html; charset=utf-8&qu ...

  6. python入门练习题-python基础知识练习题一

    1.执行Python脚本的两种方式 1.在计算机终端(运行cmd),输入安装的Python路径,然后输入Python脚本的路径,回车. 2.直接运行python 2.简述位.字节的关系. 1字节 = ...

  7. java编码-多重(乱码)

    一.1,UTF编码 - 2,ISO解码 - 3,UTF编码 - 4,ISO解码 String ISO = "ISO-8859-1"; String UTF = "UTF- ...

  8. 字符编码的前世今生--转

    原文地址:http://gitbook.cn/books/599d075614d1bc13375caeaf/index.html 前言 很多程序员对字符编码不太理解,虽然他们大概知道 ASCII.UT ...

  9. PHP页面编码声明与用header或meta实现PHP页面编码的区别

    php的header来定义一个php页面为utf编码或GBK编码 php页面为utf编码 header("Content-type: text/html; charset=utf-8&quo ...

  10. 启动tomcat控制台日志出现乱码怎么办?

    在tomcat根目录中config文件夹下将log.properties文件中将默认控制台日志输出编码UTF修改成GBK或者GB2312都可以. java.util.logging.ConsoleHa ...

最新文章

  1. 经典小游戏--推箱子
  2. cad监控摄像头图例_家庭护卫兵:乐橙 TP2 智能摄像头
  3. 图:DFS(深度优先搜索)图解分析代码实现
  4. SpringBoot @PostConstruct和@PreDestroy使用详解
  5. Android 高效的`InjectView – ButterKnife`
  6. sklearn自学指南(part32)--保序回归
  7. 科技人员在计算机前的肖像,首个全国科技工作者日来了 西南大学学子为科技工作者画像...
  8. [存档]获取通讯录信息并写到SD卡上
  9. 苹果Mac Studio 3月18日发售 但法国一用户已提前收货
  10. CEF js调用C#封装类含注释
  11. Python 常用命令
  12. jQuery 中bind(),live(),delegate(),on() 区别
  13. idea报错Cannot resolve jdk.tools:jdk.tools:1.7
  14. 程序员的目标应该是向牛人看齐而不是当经理或者赚大钱
  15. XLua访问C#中的List或者数组
  16. 2022全国智慧医院建设大会会议通知
  17. uniapp app端调起高德地图导航
  18. Switchport详细用法
  19. vue使用高德地图api,点击地图标记,弹出弹窗,使用animate让弹窗有动画的加载
  20. Java新手小白入门篇 Java项目的构建

热门文章

  1. 「软件」南方CASS9.1软件下载及安装注册教程
  2. python爬取酷狗音乐_python使用beautifulsoup4爬取酷狗音乐代码实例
  3. Hightopo 2D 入门
  4. Win2008系统下装CTBS之前的系统组件安装向导第二篇(补充篇)
  5. Android 内存映射mmap浅谈
  6. 计算机跳过密码直接登录密码,win10免密码自动登录怎么设置_win10跳过密码直接登录电脑-win7之家...
  7. AD9833数字信号发生器模块
  8. php位运算符与逻辑运算_php 或_php 逻辑运算符和
  9. 运维工程师必须掌握的基础技能有哪些?
  10. 计算机无法访问iTunes,iphone7无法连接itunes的解决方法步骤