使用c#获取文件的元数据

时间:2013-05-27 09:37:27

标签: c# asp.net webclient downloadfile

我需要使用c#查找文件的元数据。我使用的文件保存在第三方网站中。 我可以从该服务器下载该文件,但我无法获取我下载的文件的原始元数据。 如何使用c#实现这一点.Below是我的代码。

string FilePath = AppDomain.CurrentDomain.BaseDirectory + @"Downloads\";
            string Url = txtUrl.Text.Trim();
            Uri _Url = new Uri(Url);
            System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(_Url);
            request.Timeout = Timeout.Infinite;
            System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse();
            response.Close();
            if (response.ContentType != "text/html; charset=UTF-8")
            {
                string FileSize = response.Headers.Get("Content-Length");
                int lastindex = Url.LastIndexOf("/");
                string TempUrlName = Url.Substring(lastindex + 1, Url.Length - (lastindex + 1));

                WebClient oWebClient = new WebClient();
                oWebClient.DownloadFile(txtUrl.Text.Trim(), FilePath + @"\" + TempUrlName);
                if (File.Exists(FilePath + @"\" + TempUrlName))
                {
                    FileInfo oInfo = new FileInfo(FilePath + @"\" + TempUrlName);
                    DateTime time = oInfo.CreationTime;
                    time = oInfo.LastAccessTime;
                    time = oInfo.LastWriteTime;
                }
            }

只有在本地保存文件后,我才能获得文件大小,创建时间,上次访问时间和上次写入时间。但是,当使用c#将文件放在服务器中时,我需要文件元数据信息。

由于

1 个答案:

答案 0 :(得分:0)

由于这些属性存储在文件系统中并在本地保存后更改,因此您将无法通过HTTP访问这些属性。

你对第三方有影响吗?也许让他们在标题中发送这些属性?