如何读取 Putty 在 Java 服务器上发送的每个字符?

How to read each char sent by Putty at Java server?

在 Putty(Raw 模式)中强制关闭“本地行编辑”后,所有键入的字符都被发送到服务器而无需回车(使用 Wireshark 进行了检查)。

我有这个代码:

ServerSocket listener = null;
BufferedReader is;
listener = new ServerSocket(22);
socket = listener.accept();

is = new BufferedReader(new InputStreamReader(socket.getInputStream()););
while (true) {
    line = is.readLine();
    os.write("Shell#");
    os.flush(); 
}

此代码需要 Putty 的 Enter 才能读取所有键入的序列字符,

如何在Java 服务器端逐一读取这些发送的字符?

如您所见,readLine() 读取 行,因此不会 return 在换行符标记 end[ 之前=22=] 一行。

另请注意,BufferedReader 的全部意义在于 缓冲 ​​ 数据。

真正的答案是仔细查看您的代码使用的不同 classes。含义:在 InputStreamReader class!

中查看 read()