当前位置: 技术问答>linux和unix
MYSQL使用GBK编码,该如何处理
来源: 互联网 发布时间:2016-11-25
本文导语: mysql使用gbk编码 里面的中午读出来是乱码 我想将起读出来赋给std::string 可中文有问题 我使用 int code_convert(char *from_charset,char *to_charset,char *inbuf,int inlen,char *outbuf,int outlen) { iconv_t cd; int rc; char **pin = &in...
mysql使用gbk编码
里面的中午读出来是乱码
我想将起读出来赋给std::string
可中文有问题
我使用
int code_convert(char *from_charset,char *to_charset,char *inbuf,int inlen,char *outbuf,int outlen)
{
iconv_t cd;
int rc;
char **pin = &inbuf;
char **pout = &outbuf;
cd = iconv_open(to_charset,from_charset);
if (cd==0) return -1;
memset(outbuf,0,outlen);
if (iconv(cd,pin,(size_t*)(&inlen),pout,(size_t*)&outlen)==-1)
return -1;
iconv_close(cd);
return 0;
}
//UNICODE码转为GB2312码
int GBK2GB2312(char *inbuf,int inlen,char *outbuf,int outlen)
{
return code_convert("GBK","gb2312",inbuf,inlen,outbuf,outlen);
}
通过GBK2GB2312函数转换之后也是?????
请问哪里是不是错了
多谢
里面的中午读出来是乱码
我想将起读出来赋给std::string
可中文有问题
我使用
int code_convert(char *from_charset,char *to_charset,char *inbuf,int inlen,char *outbuf,int outlen)
{
iconv_t cd;
int rc;
char **pin = &inbuf;
char **pout = &outbuf;
cd = iconv_open(to_charset,from_charset);
if (cd==0) return -1;
memset(outbuf,0,outlen);
if (iconv(cd,pin,(size_t*)(&inlen),pout,(size_t*)&outlen)==-1)
return -1;
iconv_close(cd);
return 0;
}
//UNICODE码转为GB2312码
int GBK2GB2312(char *inbuf,int inlen,char *outbuf,int outlen)
{
return code_convert("GBK","gb2312",inbuf,inlen,outbuf,outlen);
}
通过GBK2GB2312函数转换之后也是?????
请问哪里是不是错了
多谢
|
我来助你
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。