libiconv应用例子
时间:2009-05-26 来源:pop_zhang
iconv的功能可算强大,可以对文本进行编码间的转换,它支持世界上很多的语言,当然我们主要用它来处理中文各种编码之间的转换,libiconv是一个开源的开发包,使用它可以非常方便的开发出适合自己用的编码转换工具。在这里http://gnuwin32.sourceforge.net/packages/libiconv.htm可以下载到libiconv的文档和开发包。
Libiconv的使用比较简单,只有3个函数
1)iconv_t iconv_open (const char* tocode, const char* fromcode);
2)size_t iconv (iconv_t cd, const char* * inbuf , size_t * inbytesleft, char* * outbuf , size_t * outbytesleft);
inbytesleft:输入(inbuf)的字符串长度;
outbytesleft:这边变量必须带入一个长度,是outbuf所指向的缓冲区长度(如1000),输出的是剩余没用到的缓冲区长度(如200,说明转换结果是800个字节)
inbuf, outbuf:返回时指针都后移了,需要注意。
3)int iconv_close (iconv_t cd);
程序片段如下:
iconv_t cd;
|