コードを記述しただけでは、System.Web アセンブリのクラスを参照できない場合があります。
Windows FormアプリケーションでSystem.Web アセンブリを追加する手順はこちらの記事を参照して下さい。
C#でURLエンコードするコードを紹介します。
URLエンコードをする場合は、HttpUtility クラスの UrlEncodeメソッドを利用します。
HttpUtility.UrlEncode( [変換する文字列] )
変換結果は、UrlEncode メソッドの戻り値として返ります。
下図のフォームを作成します。テキストボックスを2つ、ボタンを1つ配置します。
下記コードを記述します。ButtonのClickイベントを実装しています。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Web;
namespace URLEncodeSample
{
public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
textBox2.Text = HttpUtility.UrlEncode(textBox1.Text);
}
}
}
ボタンをクリックすると、以下のコードを実行します。上部のテキストボックスに入力された値をURLエンコードして、下部のテキストボックスに変換結果を表示します。
textBox2.Text = HttpUtility.UrlEncode(textBox1.Text);
プロジェクトを実行します。下図のウィンドウが表示されます。
上部のテキストボックスに文字列を入力します。
[button1]をクリックします。上部のテキストボックスに入力した文字がURLエンコードされ、結果が下部のテキストボックスに表示されます。
C#でURLのエンコードが実行できました。