写入数据的代码:
....
bw = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF-8"));
bw.write("it's a test", 0, 5);
....
读入数据代码:
....
br = new BufferedReader(new InputStreamReader(socket.getInputStream(), "UTF-8"));
....
while (true){
msg = reader.readLine();
if (msg == null){
System.out.println("client is disconnected");
break;
}
else
System.out.println(msg);
}
由于BufferedReader 的 readLine() 方法是阻塞的
readLine 判断一行文本结束的标志是 \n 或 \r
所以在写入时添加两行代码:
bw.newLine();
bw.flush();
就可以读取了