HttpServerUtility.UrlEncode メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
URL を使用して Web サーバーからクライアントへ信頼性のある HTTP 伝送を行うために、文字列をエンコードします。
オーバーロード
UrlEncode(String) |
文字列を URL エンコードし、エンコードされた文字列を返します。 |
UrlEncode(String, TextWriter) |
文字列を URL エンコードし、その結果の出力を TextWriter 出力ストリームに送信します。 |
注釈
UrlEncode は、ASP.NET アプリケーションから実行時に HttpUtility.UrlEncode メソッドにアクセスするための便利な方法です。 内部的には、 UrlEncode を使用 HttpUtility.UrlEncode して文字列をエンコードします。
WebUtility クラスを使用して、web アプリケーションの外部の値をエンコード、またはデコードします。
UrlEncode(String)
文字列を URL エンコードし、エンコードされた文字列を返します。
public:
System::String ^ UrlEncode(System::String ^ s);
public string UrlEncode (string s);
member this.UrlEncode : string -> string
Public Function UrlEncode (s As String) As String
パラメーター
- s
- String
URL エンコードするテキスト。
戻り値
URL エンコードされたテキスト。
例
次の例は、ハイパーリンクのクエリ文字列値として使用される値を URL エンコードする方法を示しています。 このコードは、Web ページの分離コード ファイルに存在します。 この例では、エンコードする値は、例を簡略化し、URL エンコードする値の種類を示すためだけにハードコーディングされています。 通常は、ユーザーまたは要求から受け取った値を URL エンコードします。
NextPage
はコントロールを HyperLink
参照します。
public partial class _Default : Page
{
protected void Page_Load(object sender, EventArgs e)
{
string destinationURL = "http://www.contoso.com/default.aspx?user=test";
NextPage.NavigateUrl = "~/Finish?url=" + Server.UrlEncode(destinationURL);
}
}
Public Class _Default
Inherits Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
Dim destinationURL = "http://www.contoso.com/default.aspx?user=test"
NextPage.NavigateUrl = "~/Finish?url=" + Server.UrlEncode(destinationURL)
End Sub
End Class
次の例は前の例に似ていますが、分離コード ファイルにないクラス内から値を URL エンコードする方法を示しています。
public class SampleClass
{
public string GetUrl()
{
string destinationURL = "http://www.contoso.com/default.aspx?user=test";
return "~/Finish?url=" + HttpContext.Current.Server.UrlEncode(destinationURL);
}
}
Public Class SampleClass
Public Function GetUrl() As String
Dim destinationURL = "http://www.contoso.com/default.aspx?user=test"
Return "~/Finish?url=" + HttpContext.Current.Server.UrlEncode(destinationURL)
End Function
End Class
注釈
URL エンコードを使用すると、すべてのブラウザーが URL 文字列内のテキストを正しく送信できます。 一部のブラウザーでは、疑問符 (?)、アンパサンド (&)、スラッシュ (/)、スペースなどの文字が切り捨てられたり破損したりする可能性があります。 その結果、これらの文字はタグまたはクエリ文字列で <a>
エンコードする必要があります。ここで、要求文字列内のブラウザーから文字列を再送信できます。
このメソッドは、ASP.NET アプリケーションから実行時に HttpUtility.UrlEncode メソッドにアクセスする便利な方法です。 内部的には、このメソッドは を使用 HttpUtility.UrlEncode して文字列をエンコードします。
ASP.NET Web ページの分離コード ファイルで、 プロパティを使用して クラスのインスタンスにHttpServerUtilityServer
アクセスします。 分離コード ファイルにないクラスでは、 を使用 HttpContext.Current.Server
して クラスのインスタンスに HttpServerUtility アクセスします。
Web アプリケーションの外部では、 クラスを WebUtility 使用して値をエンコードまたはデコードします。
適用対象
UrlEncode(String, TextWriter)
文字列を URL エンコードし、その結果の出力を TextWriter 出力ストリームに送信します。
public:
void UrlEncode(System::String ^ s, System::IO::TextWriter ^ output);
public void UrlEncode (string s, System.IO.TextWriter output);
member this.UrlEncode : string * System.IO.TextWriter -> unit
Public Sub UrlEncode (s As String, output As TextWriter)
パラメーター
- s
- String
エンコードする文字列。
- output
- TextWriter
エンコードされた文字列を格納している TextWriter 出力ストリーム。
例
次の例では、HTTP による転送用の文字列をエンコードします。 "This is a <Test String>" というテキストを含む という名前TestString
の文字列をエンコードし、"This+is+a+%3cTest+String%3e" という名前EncodedString
の文字列にコピーします。
String TestString = "This is a <Test String>.";
StringWriter writer = new StringWriter();
Server.UrlEncode(TestString, writer);
String EncodedString = writer.ToString();
Dim TestString As String = "This is a <Test String>."
Dim writer As New StringWriter
Server.UrlEncode(TestString, writer)
Dim EncodedString As String = writer.ToString()
注釈
URL エンコードを使用すると、すべてのブラウザーが URL 文字列内のテキストを正しく送信できます。 一部のブラウザーでは、疑問符 (?)、アンパサンド (&)、スラッシュ (/)、スペースなどの文字が切り捨てられたり破損したりする可能性があります。 その結果、これらの文字はタグまたはクエリ文字列で <a>
エンコードする必要があります。ここで、要求文字列内のブラウザーから文字列を再送信できます。
UrlEncode は、ASP.NET アプリケーションから実行時に HttpUtility.UrlEncode メソッドにアクセスするための便利な方法です。 内部的には、 UrlEncode を使用 HttpUtility.UrlEncode して文字列をエンコードします。
WebUtility クラスを使用して、web アプリケーションの外部の値をエンコード、またはデコードします。
適用対象
.NET