[cocos2dx]在cocos2dx中使用iconv库解决中文乱码

本文介绍了在cocos2dx游戏中如何利用iconv库来解决中文乱码问题。iconv是一个文本编码转换工具,支持Unicode、ANSI等多种编码。文章讲解了iconv的主要函数,包括iconv_open、iconv和iconv_close,并提供了在Android NDK环境中集成iconv的步骤,从而避免编译时找不到iconv.h的错误。
摘要由CSDN通过智能技术生成

iconv的作用是将文本在多种国际编码格式之间进行转换。

头文件"iconv.h"。iconv命令可以将一种已知的字符集文件转换成另一种已知的字符集文件。
目前版本为2.3.26,支持的内码包括:Unicode相关编码,如UTF-8、UTF-16等等,各国采用的ANSI编码,其中包括GB2312、BIG5等中文编码方式。
作为编程接口的iconv包括3个函数:

  • iconv_open函数用于初始化用于转换的内部缓冲区,指明需要从何种编码方式转换到哪一种。
  • iconv函数进行实际的转换,需要给出两个间接缓冲区指针和剩余字节数指针。该函数需要更新所有相关信息,因此将不可改写的指针传递给iconv是错误的。
  • iconv_close函数释放iconv_open函数的缓冲区。

Convert.h

#ifndef _Convert_H_
#define _Convert_H_
#include <vector>
#include <string>

namespace utility
{
	int utf8_len(std::string utf8);
	std::string a_u8(std::string gbk);
	std::string u8_a(std::string utf8);
} 

#endif // _Convert_H_

Convert.cpp

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值