伊勢的新常識  Index  Search  Changes  RSS  Login

HttpUtility を使わないURLエンコード

HttpUtility を使わないURLエンコード

一般的的な解

一般的に、文字列をエンコードするには HttpUtility.UrlEncode を使った方法が紹介されています。

@IT:.NET TIPS 文字列をURLエンコードするには? - C# VB.NET Webフォーム

System.Web が使えない!

しかし、この方法は System.Web を参照設定する必要があります。

しかし、たかだか1つの処理ごときにSystem.Web を参照設定をするのが嫌なこともあります。そもそも System.Web を参照できない .NET Compact Framework 上ではこの方法は使えません。

じゃあどうする

Uri.EscapeUriString を使います。

string escaped = Uri.EscapeUriString("ほげほげ");

このクラスは System アセンブリ中に存在するため、初期設定の状態で使用できます。

万能じゃないです。

ただし、UTF-8 以外には変換できません。

しかし、送信先が Google であればこれで十分ですし、送信先が自分で作るシステムであればいくらでも対応できますね。

その他の方法

カーズV3さんが独自実装されています。

HttpUtility代わり - いわゆるメモ書き@C#


Last modified:2008/06/07 10:53:21
Keyword(s):[C#] [VB.NET] [.NET] [URLエンコード]
References:[技術ドキュメント]