大家好,欢迎来到IT知识分享网。
服务器发送一条数据如:
/**
* 获取写句
* @param socket 要获取写对象的socket
* @return 流的写句�
* @throws IOException IO异常
*/
private PrintWriter getWriter(Socket socket) throws IOException {
OutputStream socketOut = socket.getOutputStream();
return new PrintWriter(socketOut, true);
}
writer.println(queryCode);
writer.flush();
客户端接收:
/**
*
* @param socket 要获取读对象的socket
* @return 流的读句�
* @throws IOException IO异常
*/
private BufferedReader getReader(Socket socket) throws IOException {
InputStream socketIn = socket.getInputStream();
return new BufferedReader(new InputStreamReader(socketIn));
}
我在接收数据时发现这样会是乱码,之前本来不想管的,后面发现实在又解决,后面看到一朋友的贴子说;
在服务端默认的编码情况下,JAVA的SOCKET接收需要GBK编码,而C#的接收需要UTF-8编码
所以
应该写成 return new BufferedReader(new InputStreamReader(socketIn,"GBK"));
这样就正常显示了。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/12245.html