System.Net.FtpWebRequest GetDateTimestamp示例

时间:2009-06-24 19:17:04

标签: ftpwebrequest

我正在寻找一小段示例代码,它使用System.Net.FtpWebRequest命名空间来获取ftp服务器上指定远程文件的时间戳。我知道我需要将我的请求对象的Method属性设置为WebRequestMethods.Ftp.GetDateTimestamp,但我不知道如何将响应返回到System.DateTime对象。

3 个答案:

答案 0 :(得分:15)

是的 - 这几乎就是我最终的结果。我选择了这样的东西

request = FtpWebRequest.Create("ftp://ftp.whatever.com/somefile.txt");

request.Method = WebRequestMethods.Ftp.GetDateTimestamp;
request.Proxy = null;

using (FtpWebResponse resp = (FtpWebResponse)request.GetResponse())
{
        Console.WriteLine(resp.LastModified);
}

答案 1 :(得分:1)

这样的事情:

DateTime DateValue;    

FtpWebRequest Request = (FtpWebRequest)WebRequest.Create(yourUri);
Request.Method = WebRequestMethods.Ftp.GetDateTimestamp;
Request.UseBinary = false;

using (FtpWebResponse Response = (FtpWebResponse)Request.GetResponse())
using (TextReader Reader = new StringReader(Response.StatusDescription))
{
    string DateString = Reader.ReadLine().Substring(4);
    DateValue = DateTime.ParseExact(DateString, "yyyyMMddHHmmss", CultureInfo.InvariantCulture.DateTimeFormat);
}

答案 2 :(得分:1)

要仅获取日期字段而不是时间,请完全作为此主题中的第一个答案,但有以下异常:

Console.WriteLine(response.LastModified().ToShortDateString);