NonSoft

URLやHTMLをエンコード/デコードする
サンプル(C#.NET)


 サンプル(ソース/コード)
URLエンコード、URLデコード、HTMLエンコード、HTMLデコードするサンプル(C#.NET)です。
URLについている%の解読やHTMLの記号(<>や&)をHTMLに影響しないように変換する時使います。
このページのサンプルソースもHTMLエンコードしています。
なぜならソースコードをそのまま載せると文字が表示されない現象が発生します。

WEBページを書いていると避けては通れないエンコード/デコードで、専用のツールが手放せません。
WEBエンコード/デコードツールはURLエンコード(GETパラメタのみ可)/URLデコード/HTMLエンコード/
HTMLデコード/文字コード表示するツールです。

このサンプルはSystem.Webを参照設定に追加してお試しください。
UrlEncode、UrlDecode、HtmlEncode、HtmlDecodeを使用しています。

VB.NET版はこちらです。
URLやHTMLをエンコード/デコードするサンプル(VB.NET)

★フォームモジュール(Form1.cs)
public partial class Form1 : Form
{
    private void button1_Click(object sender, EventArgs e)
    {
        // URLエンコードのサンプル(文字コードがUTF-8の例)
        String strUrl = "エンコード/デコード";
        strUrl = System.Web.HttpUtility.UrlEncode(
            strUrl, System.Text.Encoding.GetEncoding("UTF-8"));
        System.Diagnostics.Debug.WriteLine(strUrl);
    }

    private void button2_Click(object sender, EventArgs e)
    {
        // URLデコードのサンプル(文字コードがUTF-8の例)
        String strUrl =
    "%e3%82%a8%e3%83%b3%e3%82%b3%e3%83%bc%e3%83%89%ef%bc%8f%e3%83%87%e3%82%b3%e3%83%bc%e3%83%89";
        strUrl = System.Web.HttpUtility.UrlDecode(
            strUrl, System.Text.Encoding.GetEncoding("UTF-8"));
        System.Diagnostics.Debug.WriteLine(strUrl);
    }

    private void button3_Click(object sender, EventArgs e)
    {
        // HTMLエンコードのサンプル
        String strHtml  = "If str <> \"html\" Then Return";
        strHtml = System.Web.HttpUtility.HtmlEncode(strHtml);
        System.Diagnostics.Debug.WriteLine(strHtml);
    }

    private void button4_Click(object sender, EventArgs e)
    {
        // HTMLデコードのサンプル
        String strHtml = "If str &lt;&gt; &quot;html&quot; Then Return";
        strHtml = System.Web.HttpUtility.HtmlDecode(strHtml);
        System.Diagnostics.Debug.WriteLine(strHtml);
    }
}