A. 關於java FTP連接後文件列表中的中文是亂碼
需要設置文件傳輸的格式,有2中格式 1:asicc 。2:binary格式 也就是二進制格式,並且ftpClient提供了相應的方法,asicc(),barry(),你要在連接ftp的時候加上此方法,ftpClient.binary();
B. java如何獲取ftp制定目錄下所有文件集合(包括文件名稱)只要一個方法。
/**
* 取得相對於當前連接目錄的某個目錄下所有文件列表
*
* @param path
* @return
*/
public List getFileList(String path){
List list = new ArrayList();
DataInputStream dis;
try {
dis = new DataInputStream(ftpClient.nameList(this.path + path));
String filename = "";
while((filename = dis.readLine()) != null){
list.add(filename);
}
} catch (IOException e) {
e.printStackTrace();
}
return list;
}
我從這里拷來的 你不清楚看看裡面 http://hi..com/yuanhotel/item/000b6334894d11f42784f4da
滿意就採納 謝謝
C. java 怎麼遍歷ftp目錄下的所有目錄以及目錄下的文件名稱,取出文件的相對路徑
package com.hmilyld.exp;
import java.io.File;
public class ListFile {
private long[] count = new long[] { 0, 0 };
private File file;
private long[] listFile(String path) {
file = new File(path);
File[] f = file.listFiles();
for (int i = 0; i < f.length; i++) {
if (f[i].isDirectory()) {
count[0]++;
this.listFile(f[i].getPath());
} else {
count[1]++;
}
}
return count;
}
/**
* 得到指定路徑下的文件和文件夾數量
*
* @param path
* 要查看的路徑
* @return object[0]耗時(毫秒)<br>
* object[1]文件夾數量<br>
* object[2]文件數量
*/
public Object[] getFileCount(String path) {
long t = System.currentTimeMillis();
long[] count = this.listFile(path);
t = System.currentTimeMillis() - t;
Object[] o = new Object[] { Long.valueOf(t), Long.valueOf(count[0]),
Long.valueOf(count[1])};
return o;
}
public static void main(String[] args) {
ListFile l = new ListFile();
Object[] count = l.getFileCount("d:\\");
System.out.println(count[0]);
System.out.println(count[1]);
System.out.println(count[2]);
}
}
以前寫的一個獲取目錄下有多少文件和多少文件夾的代碼,
可以參考下.:)
D. java編寫FTP伺服器軟體(非客戶端)實現一FTP伺服器,能列出/更改目錄,上下傳文件,顯示文件列表,支持NO
您找的是GFTPServer,到YufengSoftwareStudio上去下載。或在網路上查找「GFTPServer」。全Java實現的FTP伺服器,在JRE/JDK1.6環境下直接運行,傻瓜式GUI操作,非常簡便。
E. 用java socket寫ftp客戶端如何向ftp發送命令查看文件列表
有現成的
sun.net.ftp.FtpClient類
晚上回去給你寫個例子。有問題的話,別用追回,我現在也不知道代碼有多少。
用問題的補充。
F. 用JAVA編寫一個程序實現輸出我的電腦上建立的FTP伺服器根目錄下的所有文件名
使用File類中方法就可以實現
File[] listFiles() 返回目錄下所有的文件
File file=new File("你的ftp的根路徑");
File files[]=file.listFiles();
for(int i=0;i<files.length;i++){
System.out.println(files[i].getName() );
}
如果要獲取所有的文件和文件夾可以使用String[] list()方法。返回的是String類型的數組,其中所有文件和文件夾的相對路徑表示。
補充---
如果那樣的話那麼就需要在你的ftp伺服器上做一個socket服務端,你通過一個客戶端連接上去。然後伺服器端將獲取的文件列表數組傳遞給你,就可以了。如果想直接獲取別人的機器的文件列表是很難的,基本上是不可能的,當然是出於安全的考慮
G. 用JAVA獲取FTP文件列表
學習一下ftp協議,然後用socket來模擬就可以了