我有一个应用程序,在启动时它从远程位置(通过网络)下载文件并解析它的内容。
我正在尝试加快启动过程,因为文件越大,应用程序启动越慢。
作为一种加速过程的方法,我想到了获取文件的最后修改日期,如果它是用户电脑上的文件中的新版本,那么只有下载它。 我已经找到很多方法在线完成它,但没有一个在C#中(对于Windows应用商店应用)。有没有人知道这样做的方法,而无需下载文件?如果我要下载文件,那么这个过程就会加速。
我目前下载文件的C#代码是
const string fileLocation = "link to dropbox";
var uri = new Uri(fileLocation);
var downloader = new BackgroundDownloader();
StorageFile file = await ApplicationData.Current.LocalFolder.CreateFileAsync("feedlist.txt",CreationCollisionOption.ReplaceExisting);
DownloadOperation download = downloader.CreateDownload(uri, file);
await download.StartAsync();
如果它有助于将文件存储在Dropbox中,但如果你们中的任何人对另一个免费文件托管服务有任何建议,我愿意接受建议
答案 0 :(得分:1)
通常,您可以按sending HEAD request检查文件时间,并解析/查看Last-Modified
字段的HTTP标头响应。远程服务器应该支持它,DropBox不支持直接链接的此功能(仅通过API)。但是DropBox有另一个功能,标题有etag
字段。您应该存储它并检查下一个请求。如果它改变了 - 文件也被改变了。您可以使用this tool检查远程文件头。