Если вы читаете / пишете строки, вы всегда должны использовать Reader
и Writer
. BufferedReader
позволяет вам выполнять строковые операции. Таким образом, BufferedReader
, обернутый вокруг Reader
(около InputStreamReader
), позволит вам выполнить readLine()
вызов, чтобы получить строку ввода от соединения:
BufferedReader reader =
new BufferedReader(new InputStreamReader(telnet.getInputStream()));
Для записи в соединение вы должны использовать Writer
вокруг OutputStreamWriter
:
Writer writer = new OutputStreamWriter(telnet.getOutputStream()));
Я не уверен, что это работает с потоком из Telnet
, но работает с необработанным Socket
. Затем вы можете сделать что-то вроде следующего псевдокода:
while (true) {
read a line from the server
some sort of if/then/else to test for the output
write your username/password or whatever is appropriate for the connection
repeat until some logout or IOException...
}
В классе Apache Telnet
есть ряд интересных слушателей и других обработчиков, которые вы можете использовать, если хотите, но кривая обучения может быть больше. Вот хороший пример приложения с использованием TelnetClient
:
http://www.java2s.com/Code/Java/Network-Protocol/ExampleofuseofTelnetClient.htm