Это мой первый пост.Я просто беру обновление, чтобы написать, что я сделал
import java.io.*;
import java.rmi.*;
import javax.swing.JOptionPane;
public class FileClient{
public static void main(String a[]) {
Object[] choice = {"download", "upload"};
int valg = JOptionPane.showOptionDialog(null, "What do u want to do?", null, JOptionPane.YES_NO_OPTION, JOptionPane.PLAIN_MESSAGE, null, options, "");
switch(choice){
case 0:
try {
String filename = JOptionPane.showInputDialog("what do u want to copy? ");
String name = "rmi://" + "localhost" + "/FileServer";
FileInterface fi = (FileInterface) Naming.lookup(name);
byte[] filedata = fi.downloadFile(ServerDirectory + filnavn);
File file = new File(filnavn);
BufferedOutputStream output = new BufferedOutputStream(new FileOutputStream(file.getName()));
output.write(filedata,0,filedata.length);
output.flush();
output.close();
System.out.println(file.getAbsolutePath());
} catch(Exception e) {
System.err.println("FileServer exception: "+ e.getMessage());
e.printStackTrace();
}
break;
case 1:
break;
}
}
}
Проблема, с которой я столкнулся, заключается в том, что я не могу выбрать рабочий каталог в коде.
Итак, что я узнал, так это то, что вы не можете выбрать папку рабочего каталога в java, поэтому я просто указал пути, где я получаю файлы и где я хочу их скачать:
String PathToDownloadFolder = ("//C:/Hello/")
String PathToWhereIGetTheFile = ("//C:/server/")
byte[] filedata = cf.downloadFile(PathToWhereIGetTheFile + valgtFil);
BufferedOutputStream output = new BufferedOutputStream
(new FileOutputStream(PathToDownloadFolder + file.getName()));