VB 2010下载文件,如果404发生忽略错误

时间:2011-02-28 15:56:17

标签: vb.net error-handling web-scraping

我是VB 2010的初学者 我想写一个可以下载文件的应用程序

我的问题是: 如果它给我404或403或其他什么,我想让应用程序忽略该消息,而不是webexception错误

注意:我已经知道如何用VB下载文件

2 个答案:

答案 0 :(得分:2)

如果您想忽略某些错误,但抛弃其他错误,则可以使用HTTP响应状态代码来决定要执行的操作:

    Try
        Dim wc As New System.Net.WebClient()
        wc.DownloadFile("http://www.google.com/somefilethatdoesntexist.txt", "C:\temp\somefilethatdoesntexist.xls")
    Catch ex As System.Net.WebException
        Dim response As System.Net.HttpWebResponse = ex.Response
        Select Case response.StatusCode
            Case System.Net.HttpStatusCode.NotFound, System.Net.HttpStatusCode.Unauthorized
                ' Do something with not founds or unauthorized
                Console.WriteLine("Ignoring : " & ex.ToString())
            Case Else
                Console.WriteLine(ex.ToString())
                Throw ex
        End Select
    End Try

答案 1 :(得分:0)

你不应该吞下错误 - 你应该尝试以某种方式处理它,即使它只是为了记录它。

您需要捕获WebException然后通过记录错误来处理它,然后不要重新抛出它。

Try
    'Download file...
Catch ex As WebException
    Logger.WriteError(ex)
End Try