HttpServerUtility.UrlDecode メソッド

定義

HTTP 伝送用にエンコードされた文字列をデコードし、URL の形でサーバーに送信します。

WebUtility クラスを使用して、web アプリケーションの外部の値をエンコード、またはデコードします。

オーバーロード

UrlDecode(String)

文字列を URL デコードし、デコードされた文字列を返します。

UrlDecode(String, TextWriter)

URL 形式で受け取った HTML 文字列をデコードし、その結果の出力を TextWriter 出力ストリームへ送信します。

UrlDecode(String)

文字列を URL デコードし、デコードされた文字列を返します。

public:
 System::String ^ UrlDecode(System::String ^ s);
public string UrlDecode (string s);
member this.UrlDecode : string -> string
Public Function UrlDecode (s As String) As String

パラメーター

s
String

デコードする文字列。

戻り値

デコードされたテキスト。

次の例は、クエリ文字列から取得された値を URL デコードする方法を示しています。 このコードは、Web ページの分離コード ファイルに存在します。 ReturnPage はコントロールを HyperLink 参照します。

public partial class _Default : Page
{       
    protected void Page_Load(object sender, EventArgs e)
    {
        string returnUrl = Server.UrlDecode(Request.QueryString["url"]);
        ReturnPage.NavigateUrl = returnUrl;
    }
}
Public Class _Default
    Inherits Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        Dim returnUrl = Server.UrlDecode(Request.QueryString("url"))
        ReturnPage.NavigateUrl = returnUrl
    End Sub
End Class

次の例は前の例に似ていますが、分離コード ファイルにないクラス内から値を URL デコードする方法を示しています。

public class SampleClass
{
    public string RetrievePassedUrl()
    {
        return HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.QueryString["url"]);
    }
}
Public Class SampleClass
    Public Function RetrievePassedUrl() As String
        Return HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.QueryString("url"))
    End Function
End Class

注釈

URL エンコードを使用すると、すべてのブラウザーが URL 文字列内のテキストを正しく送信できます。 一部のブラウザーでは、疑問符 (?)、アンパサンド (&)、スラッシュ (/)、スペースなどの文字が切り捨てられたり破損したりする可能性があります。 その結果、これらの文字はタグまたはクエリ文字列で <a> エンコードする必要があります。ここで、要求文字列内のブラウザーから文字列を再送信できます。

このメソッドは、ASP.NET アプリケーションから実行時に HttpUtility.UrlDecode メソッドにアクセスする便利な方法です。 内部的には、このメソッドは を使用 HttpUtility.UrlDecode して文字列をデコードします。

ASP.NET Web ページの分離コード ファイルで、 プロパティを使用して クラスのインスタンスにHttpServerUtilityServerアクセスします。 分離コード ファイルにないクラスでは、 を使用 HttpContext.Current.Server して クラスのインスタンスに HttpServerUtility アクセスします。

Web アプリケーションの外部では、 クラスを WebUtility 使用して値をエンコードまたはデコードします。

適用対象

UrlDecode(String, TextWriter)

URL 形式で受け取った HTML 文字列をデコードし、その結果の出力を TextWriter 出力ストリームへ送信します。

public:
 void UrlDecode(System::String ^ s, System::IO::TextWriter ^ output);
public void UrlDecode (string s, System.IO.TextWriter output);
member this.UrlDecode : string * System.IO.TextWriter -> unit
Public Sub UrlDecode (s As String, output As TextWriter)

パラメーター

s
String

デコードする HTML 文字列。

output
TextWriter

デコードされた文字列を格納する TextWriter 出力ストリーム。

次の例では、 という名前 EncodedString の文字列 (URL で受信) を という名前 DecodedStringの文字列にデコードします。

StringWriter writer = new StringWriter();
Server.UrlDecode(EncodedString, writer);
String DecodedString = writer.ToString();

Dim writer As New StringWriter
Server.UrlDecode(EncodedString, writer)
Dim DecodedString As String = writer.ToString()
   

注釈

URL エンコードを使用すると、すべてのブラウザーが URL 文字列内のテキストを正しく送信できます。 一部のブラウザーでは、疑問符 (?)、アンパサンド (&)、スラッシュ (/)、スペースなどの文字が切り捨てられたり破損したりする可能性があります。 その結果、これらの文字はタグまたはクエリ文字列で <a> エンコードする必要があります。ここで、要求文字列内のブラウザーから文字列を再送信できます。

UrlDecode は、ASP.NET アプリケーションから実行時に HttpUtility.UrlDecode メソッドにアクセスするための便利な方法です。 内部的には、 UrlDecode を使用 HttpUtility.UrlDecode して文字列をデコードします。

WebUtility クラスを使用して、web アプリケーションの外部の値をエンコード、またはデコードします。

適用対象