WebClient.DownloadFileAsync保留上次修改日期

时间:2014-06-19 16:39:10

标签: c# asynchronous download

我正在使用WebClient.DownloadFileAsync方法从远程服务器通过Windows应用程序到我的本地计算机。我可以使用上面的方法下载文件,但问题是"上次修改日期"当文件服务器上的文件被下载到我的机器时被修改为当前日期和时间。当通过Fiddler下载文件时,我可以在文件的响应标题中看到上次修改日期。你能帮我保留文件的最后修改日期:我使用下面的代码:

 // Create a web client
        using (var client = new IfModifiedSinceWebClient())
        {
            client.IfModifiedSince = File.GetLastWriteTimeUtc(path);


            // Initiate an asynchronous download to a temporary file
            var downloadPath = Path.GetTempFileName();
            client.DownloadFileCompleted += new AsyncCompletedEventHandler(UpdateFileIfNewerDownloadFileCompleted);
            client.DownloadFileAsync(uri, downloadPath, new UpdateFileIfNewerState(path, downloadPath, onComplete));
        }

1 个答案:

答案 0 :(得分:1)

以下是我在同步下载时的操作方法。

File.SetLastWriteTime(filename, client.ResponseHeaders("Last-Modified"))