Webclient 无法下载.gif 文件吗?

Is Webclient unable to download .gif files?

好的,这是在 C# 中,我正在尝试通过 url 下载图像文件。

     System.Uri url = new Uri(attachments.FirstOrDefault().Url);
        string destination = @"E:\Pictures\Test\";
      using (WebClient client = new WebClient())
                    {
                        client.DownloadFile(url, destination);
                    }

到目前为止,它适用于 .jpg、.jpeg 和 .png 文件。但它不适用于 .gif 文件。我不确定为什么。

通过查看响应中的 ContentType 来使用下载文件操作 header,如果您只想下载文件并使用与 URL 中使用的名称相同的名称保存它,则使用下载数据。

public static void Test()
{
    string urlString = "https://media0.giphy.com/media/o9ggk5IMcYlKE/200.gif";
    System.Uri url = new Uri(urlString);
    string destination = @"C:\Temp\";
    string[] urlSplit = urlString.Split("/");
    string filename = urlSplit[urlSplit.Length - 1];

    using (WebClient wc = new WebClient())
    {
        byte[] fileBytes = wc.DownloadData(url);
        System.IO.File.WriteAllBytes(destination + filename, fileBytes);
    }
}