【发布时间】:2012-07-13 19:31:15
【问题描述】:
我尝试将本地文件夹文件的最后修改日期设置为 FTP 文件的最后修改日期。 但是,在返回值中它返回 false 并且日期也没有正确设置。
这是函数,
public static void getModifiedDateAndTimeFromFTPFile(String FTPHost, String FTPUserName, String FTPPassword, String FTPRemoteDirectory, String localFilePath, String fileName) {
try{
//get Local File
File fileLocal = new File(localFilePath + fileName);
//Connect to FTP and get the lastmodified time of File.
FTPClient client = new FTPClient();
client.connect(FTPHost);
client.login(FTPUserName, FTPPassword);
client.changeWorkingDirectory(FTPRemoteDirectory);
FTPFile ftpFile = client.listFiles(fileName)[0];
//Get last_modified date of FTP file.
Date ftpFileDate = ftpFile.getTimestamp().getTime();
//Now set date to the Local File.
boolean boolSetTime = fileLocal.setLastModified(ftpFileDate.getTime());
System.out.println(" Was last modified time set successfully ? : " + boolSetTime);
} catch (Exception ex) {
System.out.println("Error : " + ex.toString());
}
}
谁能帮我指出我的错误?
谢谢
【问题讨论】:
-
您是否尝试过回显 ftpFileDate.getTime()?另外,您是否有权访问相关文件?
-
是的,我确实有权访问文件,即使我可以下载文件。
-
我也尝试打印 ftpFileDate.getTime() 并返回正确的最后修改日期。
-
我找到了解决方案。路径分隔符是原因。感谢您的帮助。
标签: java file ftp timestamp last-modified