Server - Klient - server nie czyta

0

Nie mam pojęcia co robię źle..

SERVER

public class Server {
	
	public static void main(String args[]) throws IOException, InterruptedException
	{
		ServerSocket serverSocket = new ServerSocket(3001);
		Socket socket = serverSocket.accept();	
		
		System.out.println("+ 1");
		
		BufferedReader bufferedReader = new BufferedReader
				(new InputStreamReader(socket.getInputStream()));
		
		while(true)
		{
			String message = bufferedReader.readLine();
			System.out.println(message);
		}	
	}
}

KLIENT

public class Client {
	
	public static void main(String args[]) throws UnknownHostException, IOException {
		
		Socket socket = new Socket("localhost", 3001);
		
		System.out.println("Connected");
		
		BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
		DataOutputStream outputStream = new DataOutputStream(socket.getOutputStream());
		
		while(true)
		{
			String message = reader.readLine();
			outputStream.writeChars(message);
		}
		
	}
	}

Powinno być tak, że klient pisze, server czyta, a problem w tym, że server nic nie wypisuje.

0

wygląda, że wszystko ok

0

To dlaczego nie działa ?

0

Nie działa, ponieważ po stronie serwera korzystasz z buforowanego wejścia, natomiast readLine() którego używasz by odczytać wiadomość z terminala obcina znak końca linii, na który to czeka readLine() po stronie serwera.

0

Hmm, więc czym to będzie najlepiej zastąpić ?

0

Poradziłem sobie. Użyłem ObjectOutputStream oraz ObjectInputStream. Dzięki za pomoc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1