廢話不多說了,直接給大家貼java代碼了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
import java.io.IOException; import sun.net.TelnetInputStream; import sun.net.ftp.FtpClient; public class MyFtp { static FtpClient myFtp; static String hostname; static String username; static String password; /** * @author cutelion 20051108 14:27 * @param args */ public static void main(String[] args) { try { hostname = "203.171.236.123" ; myFtp = new FtpClient(hostname); myFtp.login( "user" , "pass" ); myFtp.binary(); showFileContents(); } catch (IOException e1) { System.out.print(e1); } } public static void showFileContents() { int ch; StringBuffer buf = new StringBuffer(); try { TelnetInputStream inStream = myFtp.list(); while ((ch = inStream.read()) >= 0 ) { buf.append(( char ) ch); } System.out.print( new String(buf.toString().getBytes( "iso-8859-1" ), "GBK" )); inStream.close(); myFtp.closeServer(); } catch (Exception e) { System.out.println( "Error" + e); } } } [ @more @] |
下面是FtpClient類所提供的一些控制命令。
public void cd(String remoteDirectory)
該命令用于把遠程系統上的目錄切換到參數remoteDirectory所指定的目錄。
public void cdUp():該命令用于把遠程系統上的目錄切換到上一級目錄。
public String pwd():該命令可顯示遠程系統上的目錄狀態。
public void binary():該命令可把傳輸格式設置為二進制格式。
public void ascii():該命令可把傳輸協議設置為ASCII碼格式。
public void rename(String string,String string1)
該命令可對遠程系統上的目錄或者文件進行重命名操作。
除了上述方法外,類FtpClient還提供了可用于傳遞并檢索目錄清單和文件的若干方法。這些方法返回的是可供讀或寫的輸入、輸出流。下面是其中一些主要的方法。
public TelnetInputStream list()
返回與遠程機器上當前目錄相對應的輸入流。
public TelnetInputStream get(String filename)
獲取遠程機器上的文件filename,借助TelnetInputStream把該文件傳送到本地。
public TelnetOutputStream put(String filename)
以寫方式打開一輸出流,通過這一輸出流把文件filename傳送到遠程計算機。