Я создаю программу, в которой сервер отправляет список файлов клиенту, который клиент может запросить для проверки содержимого. Он правильно отправляет список файлов, но клиент не принимает никаких данных с консоли. Это программа сервераКлиентский сокет не принимает никакого ввода от cmd
import java.util.*;
import java.io.*;
import java.net.*;
class TCPServer{
public static void main(String args[]) throws Exception{
ServerSocket server = new ServerSocket(4888);
while(true){
Socket client = server.accept();
System.out.println(client);
DataOutputStream out = new DataOutputStream(client.getOutputStream());
File path = new File("C://testjava");
String[] files = path.list();
String send = "";
for(String file:files){
send = send + file + "\n";
}
out.writeBytes(send);
BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream ()));
String search_file = in.readLine();
String searching = "";
for(String file:files){
if (file.equals(search_file)){
searching = search_file;
}
}
if(searching.equals("")){
out.writeBytes("Requested file does not exist");
client.close();
}
Scanner file = new Scanner(new FileReader(searching));
while(file.hasNextLine()){
out.writeBytes(file.nextLine());
}
client.close();
}
}
}
Это клиентская программа
import java.util.*;
import java.io.*;
import java.net.*;
class TCPClient{
public static void main(String args[]) throws Exception{
Socket client = new Socket("localhost",4888);
BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
String display = "";
while ((display = in.readLine()) != null) {
System.out.println(display);
}
System.out.println("\nChoose a file");
Scanner src = new Scanner(System.in);
String ask_file = src.nextLine();
DataOutputStream out = new DataOutputStream(client.getOutputStream());
out.writeBytes(ask_file);
display = "";
while ((display = in.readLine()) != null) {
System.out.println(display);
}
}
}
Может кто-нибудь объяснить, почему клиент не принимает какой-либо вход? Thanx