在使用Scanner的nextLine()读取控制台输入,通过BufferedWriter输出在另外机器上使用BufferedReader的readLine()读取时,readLine()方法一直被阻塞,检查了一下。因为nextLine()以回车符标记一行结束,但是返回的字符串是不包含回车符的,导致BufferedWriter写过去的字符串没有回车符,而readLine()也是以回车符或换行符为一行结束标记,所以readLine()没有收到结束标记导致一直处于阻塞状态,所以非要使用nextLine()获取字符串后在传递的话可以手动加上回车符标记
Scanner scanner = new Scanner(System.in);
String info = null;
while (scanner.hasNext()){
info = scanner.nextLine();
bufferedWriter.write(info+"\r");
bufferedWriter.flush();
}