三大功能模塊:FtpList 顯示服務器文件、GetButton 下載、PutButton 上傳。需引入 import sun.net.*、import sun.net.ftp.*。
FtpClient ftpClient = new FtpClient();
ftpClient.openServer(server);
ftpClient.login(user, password);
if (path.length() != 0) ftpClient.cd(path);
TelnetInputStream is = ftpClient.list();
int c;
while ((c = is.read()) != -1) System.out.print((char) c);
is.close();
ftpClient.closeServer();
ftpClient.binary();
TelnetInputStream is = ftpClient.get(filename);
FileOutputStream os = new FileOutputStream(new File(filename));
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) os.write(bytes, 0, c);
is.close(); os.close(); ftpClient.closeServer();
ftpClient.binary();
TelnetOutputStream os = ftpClient.put(filename);
FileInputStream is = new FileInputStream(new File(filename));
byte[] bytes = new byte[1024];
int c;
while ((c = is.read(bytes)) != -1) os.write(bytes, 0, c);
is.close(); os.close(); ftpClient.closeServer();
注意:sun.net.ftp 為內部 API,生產環境建議改用 Apache Commons Net 等標準庫。