我正在使用库com.enterprisedt.net.ftp.FileTransferClient
从ftp服务器下载文件。
我正在尝试使用方法FileTransferClient getModifiedTime(java.lang.String remoteFileName)
但收到以下错误:
com.enterprisedt.net.ftp.FTPException:550命令MDTM不是 可用于'AAAA.BBBB.CCCC.DDDDD.EEEEEEEEEE(0)'
我尝试从命令行使用命令quote mdtm 'filename'
和相同的响应。
查看两个链接
但是找不到任何替代方案或解决方法......有什么想法吗?
编辑:尝试了remotehelp
命令,下面是回复:
214-服务器-FTP命令是: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-之前的命令 ''没有实现
根据响应服务器应该支持命令MDTM
..我在这里做错了吗?
答案 0 :(得分:0)
正如响应代码所说,您连接的服务器不支持询问文件的上次修改时间。
MDTM(获取上次修改时间)是一个扩展,因此FTP服务器可以选择实现它。此外,没有命令在任何与FTP相关的RFC建议中询问文件创建时间。
除非您的FTP服务器具有询问文件创建时间的命令,否则不太可能使用FTP执行您想要的操作。
答案 1 :(得分:0)
我认为可以使用
getRaw();
Javadoc告诉:
getRaw()
public java.lang.String getRaw()
返回:
返回原始服务器字符串。
因此,如果您使用“LIST”查询服务器,则应该获取所有文件的列表,包括上次修改时间。 您必须手动解析修改时间。