Webclient是否无法下载.gif文件?

问题描述

好吧,这是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进行操作,如果您只想下载文件并以与URL中使用的相同名称保存文件,则使用DownloadData。

Option Explicit
Public Sub Example()
    
    Dim ws1 As Worksheet
    Set ws1 = ThisWorkbook.Worksheets("Template")

    Dim LRow As Integer
    LRow = ws1.Cells(ws1.Rows.Count,"A").End(xlUp).row
    
    Dim LCol As Integer
    LCol = ws1.Cells(5,ws1.Columns.Count).End(xlToLeft).Column
    
    Dim VlkupRng As Range
    Set VlkupRng = ws1.Range("A5",ws1.Cells(LRow,LCol))
      
    Dim path As String 'Getting Scan data
    path = "\\bfgfs\Supply Chain\Demand Planning\Coles\Promo Review Report\"
    
    Dim r As Long
    Dim c As Long
    Dim Vlkup As Variant
    
    For r = 6 To VlkupRng.Rows.Count
        
        For c = 6 To VlkupRng.Columns.Count
        
        Vlkup = ws1.Cells(r,2) & ws1.Cells(r,5) & Format(ws1.Cells(5,c),"d/mm/yyyy")
        
            If Cells(r,5).Value = "Coles Scan Sales" Then
                ws1.Cells(r,c).Formula = "=VLOOKUP(" & Vlkup & ",'" & path & "[01_Coles_Scan_Sales_All.xlsx]Sheet1'!$E:$O,11,0)"
            End If
    
        Next c
        
    Next r
 
End Sub