次のようなApache Commonsを使用して、ディレクトリ内のすべてのファイルをローカルマシンにダウンロードしようとしています:
import java.io.FileOutputStream;
import org.apache.commons.net.ftp.FTPClient;
import java.io.IOException;
import java.net.SocketException;
import org.apache.commons.net.ftp.FTPFile;
public class FTPExample {
public static void main(String[] args) throws SocketException, IOException {
FTPClient client = new FTPClient();
client.connect("MyHostName");
client.enterLocalPassiveMode();
client.login("username", "password");
FTPFile[] files = client.listFiles("/App/");
for (FTPFile file : files) {
System.out.println(file.getName());
FileOutputStream fos = new FileOutputStream("Ftp Files/" + file.getName());
client.retrieveFile(file.getName(),fos);
}
}
}
ディレクトリ内のファイルを一覧表示できますが、ファイルをダウンロードしようとすると FilenotFound 例外が発生します。助けてください。私のエラーは次のとおりです。
Exception in thread "main" java.io.FileNotFoundException: Ftp Files\01 (The system cannot find the path specified)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:212)
at java.io.FileOutputStream.<init>(FileOutputStream.java:104)
at ftpexample.FTPExample.main(FTPExample.java:30)
Java Result: 1
編集: ファイルを Ftp File/ フォルダーに元のファイル名で保存する必要があります。