ARM开发板上iconv_open("utf-8", "gb2312") 调用失败的解决方法
static int code_convert(char* from_charset, char* to_charset,
char* inbuf, size_t inlen, char* outbuf, size_t outlen)
{
iconv_t cd;
char **pin = &inbuf;
char **pout = &outbuf;
cd = iconv_open(to_charset, from_charset);
if (cd == -1)
{
perror("iconv_open:");
return -1;
}
memset(outbuf,0,outlen);
if (iconv(cd, pin, &inlen, pout, &outlen) == -1)
{
//printf("%s: call iconv failed!\n", __FUNCTION__);
printf("errno=%d\n", errno);
perror("iconv failed:\n");
iconv_close(cd);
return -1;
}
iconv_close(cd);