2012-03-03 29 views
0

我正在使用庫com.enterprisedt.net.ftp.FileTransferClient從ftp服務器下載文件。如何從ftp檢索文件創建日期

我試圖檢索使用方法FileTransferClient getModifiedTime(java.lang.String remoteFileName)

FTP文件創建日期,但收到以下錯誤:

com.enterprisedt.net.ftp.FTPException: 550 command MDTM is not available for 'AAAA.BBBB.CCCC.DDDDDD.EEEEEEEEEE(0)'

我嘗試使用命令quote mdtm 'filename'命令行和相同的反應。

看着兩個環節

  1. http://www.nsftools.com/tips/RawFTP.htm

  2. http://www.nsftools.com/tips/MSFTP.htm

但找不到this..Any想法任何替代方案或解決方法嗎?

編輯:嘗試的命令remotehelp及以下的響應:

214-The server-FTP commands are: 214-ABOR,*ACCT,*ALLO, APPE, CDUP, CWD, DELE, FEAT, HELP, LANG, LIST, MDTM, MKD 214-MODE, NLST, NOOP, OPTS, PASS, PASV, PORT, PWD, QUIT, REIN, REST, RETR, RMD 214-RNFR, RNTO, SITE, SIZE, SMNT, SYST, STAT, STOR, STOU, STRU, TYPE, USER 214-ADAT, AUTH, CCC, PBSZ, PROT, EPSV, EPRT 214-The commands preceded by '' are not implemented

按照響應的服務器應該支持我做錯什麼這裏的命令MDTM ..Am?

回答

0

由於響應代碼表示,所連接的服務器不支持詢問文件的上次修改時間。

MDTM(得到最後修改時間)是一個擴展,所以它是FTP服務器實現它的可選項。而且,在任何FTP相關的RFC建議中都沒有要求文件創建時間的命令。

除非您的FTP服務器具有詢問文件創建時間的命令,否則不可能通過使用FTP來做你想做的事情。

+0

嗨,當我在服務器上做了remotehelp命令,它顯示mdtm作爲有效的命令..任何想法..更詳細地編輯了問題。 – javanoob 2012-03-03 14:06:05

0

我認爲人們可以使用

getRaw(); 

的Javadoc講述:

getRaw()

public java.lang.String getRaw()

Returns:

Returns the raw server string.

因此,如果您查詢用「LIST」的服務器,你應該得到一個列表關閉,包括最後修改時間的所有文件。 您必須手動解析修改時間。