Socket使用IO流问题
南陈 2017-08-30 08:09:14 因业务需要,想要将GBK字节流发送给服务端。
在客户端中:
OutputStream os = socket.getOutputStream();
OutputStreamWriter osw = new OutputStreamWriter(os,"GBK");
PrintWriter pw = new PrintWriter(osw);
log.info("向服务器发送的报文信息:"+str+",GBK长度:"+str.getBytes("GBK").length);
pw.write(str);
在服务端中:
InputStream in = socket.getInputStream();
InputStreamReader isr = new InputStreamReader(in,"GBK");
BufferedReader br = new BufferedReader(isr);
String clientInputStr = br.readLine();
System.out.println("客户端发过来的内容ret:" + clientInputStr);
总是接收不到数据,而且还提示超时:java.net.SocketTimeoutException: Read timed out,不知道是什么原因。
或者请大家提供一种方案,谢谢!