我一直在使用客户端 - 服务器应用程序,客户端应该能够获取文件列表(文件名)。客户端向服务器和服务器输入相应的命令,返回存储在其目录中的文件名。
但是,我能够打印出文件名,但不能打印出所有文件。现在程序只打印一个文件(第一个)。实际上,在服务器目录中,我有几个文件。 如何获取所有文件?
在这里,我将仅复制粘贴负责获取文件的代码部分:
服务器类:
//receive getList command from the client
String commandGetList = inputFromClient.readUTF();
String path = ".";
String files;
File folder = new File(path);
File[] listOfFiles = folder.listFiles();
for (int i = 0; i < listOfFiles.length; i++) {
if (listOfFiles[i].isFile()) {
files = listOfFiles[i].getName();
outputToClient.writeUTF(files);
}
}
区域方:
//enter the command to get the list of files
System.out.println("Enter getList command: ");
String commandGetList = sc.nextLine();//store that command
//sending that command to the server
outputToServer.writeUTF(commandGetList);
outputToServer.flush();//flushing out the stream
//getting the listed file from the server
String listedFileFromSErver = inputFromServer.readUTF();
System.out.println("You have the following files in the server directory: " + listedFileFromSErver);