4

実際のコンテンツをダウンロードせずに URI が VB.NET に存在するかどうかを判断する最良の方法を探しています。System.IO.FileExists/My.Computer.FileSystem.FileExistsファイルが存在するかどうかを判断するためにローカルで使用できますが、Web に相当するものはありますか?

現在、 を使用してを使用HttpWebRequestして URI の存在を確認していResponseStreamます。これにより、ターゲットが存在する場合はストリームが生成され、存在しない場合は例外がスローされます。この関数は、PDF ファイル (通常は 5MB 以上)、画像などもチェックするように拡張されており、実際にコンテンツをストリームに取り込むのは時間/帯域幅の無駄になります。

「成功」(ターゲットが存在する) の場合、ファイルまたはページをダウンロードしたくありません。単純に、この URI の末尾に何かが存在するかどうかを示すブール値で終了します。

4

2 に答える 2

9

これはVB.NETにあります。アドレスがhttp://またはhttps://で始まっていることを確認してください。

Public Function CheckAddress(ByVal URL As String) As Boolean
    Try
        Dim request As WebRequest = WebRequest.Create(URL)
        Dim response As WebResponse = request.GetResponse()
    Catch ex As Exception
        Return False
    End Try
    Return True
End Function
于 2010-05-28T02:50:11.587 に答える
5
        HttpWebResponse response;
        try
        {
            HttpWebRequest req;// Prepare request
            response = req.GetResponse() as HttpWebResponse;
        }
        catch (WebException ex)
        {
            HttpWebResponse exResponse = ex.Response as HttpWebResponse;
            response = exResponse;                
        }

そして今、あなたはただチェックすることができますresponce.StatusCode

于 2010-05-28T00:00:43.620 に答える