我正在创建一个文件共享程序,虽然这只能在本地工作,我试图将两个不同的客户端连接到两个不同的目录(这两个目录都在同一台计算机上)并显示连接到不同端口的文件(如果可能,可以使用IP。)
我有一些代码可以将文件名和IP的+端口分别放在hashmap键和值中。但目前它们都连接到同一个IP和端口。
当我打开两个不同的客户端时,他们有两个不同的端口。(我可以在服务器GUI中看到)
case ServerConstants.CLIENT_PUBLISHES:
int switchC = 1;
if(switchC == 1){
File client1Folder = new File(
"C:\\###### #####\\##### #######\\### ######\\client1");
File[] allFilesClient1 = client1Folder.listFiles();
for (File fileName : allFilesClient1) {
Index.fileDir.put(fileName.getName(),
(remoteClient.getInetAddress().toString() + " " + remoteClient.getPort()));
}
switchC++;
}
if(switchC == 2){
File client2Folder = new File(
"C:\\###### #####\\##### #######\\### ######\\client2");
File[] allFilesClient2 = client2Folder.listFiles();
for (File fileName1 : allFilesClient2) {
Index.fileDir.put(fileName1.getName(),
(remoteClient.getInetAddress().toString() + " " + remoteClient.getPort()));
}
System.out.print(" CPub Method Ended \n");
for (Map.Entry<String, String> mapEntry : Index.fileDir
.entrySet()) {
System.out.println(mapEntry.getKey() + " || "
+ mapEntry.getValue());
}
break;
}