使用 FTP 获取服务器本地时间

问题描述 投票:0回答:1

可以使用FTP获取本地服务器时间吗?我正在使用 .NET 中的智能设备项目并使用 Exceed FTP 库,不幸的是这些是我的限制。

System.File.IO
不可在 Compact 框架中使用。

我首先在本地计算机上创建了一个文件,将其通过 FTP 传输到服务器并将其复制回来。

FtpFolder destTimestampFolder = new FtpFolder(ftpConn, 
ConfigReader.AppSettings["inDir"]+"\\timestamp");

 AbstractFile localttfile = new DiskFile(ConfigReader.AppSettings["mainPath"] + ConfigReader.AppSettings["clientConfigDir"] + "\\timestamp.txt");
if (!localttfile.Exists)
{
    localttfile.Create();                    
}

localttfile.CopyTo(destTimestampFolder, true);
// copy back and grab the last accessed timestamp
AbstractFile destttfile = rootFolder.GetFile(ConfigReader.AppSettings["inDir"] + "\\timestamp\\timestamp.txt");
destttfile.CopyTo(destFolder, true);

MessageBox.Show(localttfile.LastAccessDateTime.ToString());

显示的时间戳显示的是本地机器时间。我尝试显示

destttfile.LastAccessDateTime
,它给了我零。

任何解决方法都会有帮助。我基本上想获得最后访问的文件标记并计算差异。

c# .net file-io ftp compact-framework
1个回答
1
投票

不可以,FTP 协议无法检索服务器时钟。

有两种可能:

  1. 使用
    MLST
    MDTM
    命令应返回文件的 UTC 时间戳。
  2. 上传新文件并查看其修改时间。

否则,您将不得不使用其他服务来检索服务器的本地时间(例如某些 Web 服务)。

© www.soinside.com 2019 - 2024. All rights reserved.