求助:如何获得FTP文件的最后修改时间,精确到秒
我使用的是windows服务器,用commons-net 包,取FTP上文件的最后修改时间:FTPClient ftp = new FTPClient();
ftp.connect("localhost", 14000);
ftp.login("admin", "admin");
ftp.changeWorkingDirectory("sc");
FTPFile[] fl=ftp.listFiles("WS.txt");
System.out.println(fl[0].getTimestamp().getTime());
ftp.disconnect();
取得的时间只能精确到分钟,秒都是00
该怎么做才能得到秒数呢?
备注:换用了N个开源包,都无法得到秒数 --------------------编程问答-------------------- 自己顶一下 --------------------编程问答-------------------- 再顶 --------------------编程问答-------------------- 调用getTimestamp会返回一个Calendar对象,然后调用Calendar的getTime()会返回一个Date,但是Date的toString()方法用错了,它不会返回毫秒数的
参见:
public String toString()把此 Date 对象转换为以下形式的 String:
dow mon dd hh:mm:ss zzz yyyy其中:
dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。
mon 是月份 (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)。
dd 是一月中的某一天(01 至 31),显示为两位十进制数。
hh 是一天中的小时(00 至 23),显示为两位十进制数。
mm 是小时中的分钟(00 至 59),显示为两位十进制数。
ss 是分钟中的秒数(00 至 61),显示为两位十进制数。
zzz 是时区(并可以反映夏令时)。标准时区缩写包括方法 parse 识别的时区缩写。如果不提供时区信息,则 zzz 为空,即根本不包括任何字符。
yyyy 是年份,显示为 4 位十进制数。 --------------------编程问答-------------------- 对于上面的回答,不好意思!看成了毫秒,按你的方法按理是可以得到的 --------------------编程问答-------------------- 感谢myhonor,但是秒的话一直为00,这个问题真是头痛 --------------------编程问答-------------------- 自己顶 --------------------编程问答-------------------- File中的long lastModified();
这个好像可以达到毫秒级 --------------------编程问答-------------------- 跟你碰到一样的问题。。。
没人能解答吗? --------------------编程问答-------------------- 只能得到分。因为FTP上的文件的更新时间也只精确到分。所以你获得的时间里的秒数均为零。 --------------------编程问答-------------------- 楼主这个问题解决了吗,我也碰到了
补充:Java , Java SE