您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> VC/MFC >> 如何解决VC和Java通过socket通信时遇到的字符集问题

如何解决VC和Java通过socket通信时遇到的字符集问题

来源:网络整理     时间:2016/8/9 12:40:25     关键词:

关于网友提出的“ 如何解决VC和Java通过socket通信时遇到的字符集问题”问题疑问,本网通过在网上对“ 如何解决VC和Java通过socket通信时遇到的字符集问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 如何解决VC和Java通过socket通信时遇到的字符集问题
描述:

我写了一段VC的程序,采用socket的方式通过调用函数send向一段用Java写的代码发送数据,如果数据为纯英文的话就没问题,当数据中含有中文时,中文数据部分就会出现乱码,请高手指点。
VC中我用如下方式发送数据:
l_iSendLen=send(sendSocket,cSendPack,length,0);
Java中我用如下方式接收数据:
    InputStream in = socket.getInputStream();
    while(leftSize>0)
    {
     readSize = in.read(body, bodyLen - leftSize , leftSize);
     leftSize -= readSize;
    }
    
其中body是缓冲区,定义如下:
byte body[] = new byte[bodyLen + 1];


解决方案1:

是不是要用宽子元,unicode之类的

解决方案2:

程序问题,应该不是java的问题

解决方案3:

全部当成字符串来发送接收,汉字占2个字节一定要接收完整,否则就是乱码


以上介绍了“ 如何解决VC和Java通过socket通信时遇到的字符集问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3155449.html

相关图片

相关文章