Я подключился к уже существующему серверу, который содержит строки строк, которые мне нужно прочитать. Учитывая, что мне нужно читать только в строковом типе, который будет работать здесь, читатель ввода, чтобы я мог читать строка за строкой в моем цикле While? Вот мой простой клиент:Как читать строки ввода с сервера? (приложение для клиентской консоли java)
public class Client
{
public static final int PORT_NUMBER = 8888;
public static void main(String[] args)
{
int port = PORT_NUMBER;
String content;
OutputStream output;
InputStream input;
Socket s = null;
try
{
s = new Socket("server.example.exp", port);
output = s.getOutputStream();
input = s.getInputStream();
System.out.println("Connected to " + s.getInetAddress() + " on port " + s.getPort());
}
catch (IOException e) {System.err.println(e);}
while (true)
{
try
{
//read next line from server
}
catch (EOFException eof){
System.out.println("eof encountered" + eof.getMessage());
break;
}
catch (OptionalDataException ode){System.out.println("OptionalDataException" + ode.getMessage());}
catch (IOException ioe){System.out.println("IOException on read object");}
catch (ClassNotFoundException cnf){System.out.println("ClassNotFoundException");}
}
}
}
Я знаю, что это очень простой вопрос, я просто возникли проблемы с началом работы, все. Я ценю любые разъяснения. Благодарю.
You 'got got the required 'InputStream', хотя нет гарантии, что он действителен при вводе цикла while. Так в чем ваш вопрос? – Sinkingpoint
Извините, я знаю, что на данный момент не хватает валидации. Просто скелет, чтобы учиться. Мой вопрос: как я могу работать с этим объектом InputStream, чтобы читатьNextLine? Доступные методы - например read() - возвращают только int. – user2303598
Начнем с изучения [Basic I/O] (http://docs.oracle.com/javase/tutorial/essential/io/) и [Все о сокетах] (http://docs.oracle.com/ javase/tutorial/networking/socket /) – MadProgrammer