• ベストアンサー

検索後のurl表示窓に出る文字列を表す「%E7%8C%AB」などを変換

ヤフーなどで検索した後のURLで検索キーワードが %??%??などに変換されて表示していますが、 これを元通りの文字列に戻すにはどうしたら良いでしょうか? 「漢字コード」について検索してみたのですが、みつかりませんでした。 例えば Dim a as string = "%E7%8C%AB" を「猫」に戻す式を教えて頂きたいです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

VB.NETでのサンプル(UTF-8の場合です、それぞれの文字コードが違う場合は、指定するEncodeも変える必要があります) ---------------------------------------------------------------- Imports System Imports System.IO Imports System.Text Imports System.Web.HttpUtility '/r:System.Web.Dll Class decodeSample Shared Sub Main() Dim a As String = "%E7%8C%AB" Dim str As String = UrlDecode(a, Encoding.GetEncoding("UTF-8")) Console.WriteLine(str) End Sub End Class

popopompom
質問者

お礼

ご回答ありがとうございます。 早速試させて頂きました。 Imports System.Web.HttpUtility '/r:System.Web.Dll とか UrlDecode の部分に波線が付いてしましましたが、 重要なキーワードがいろいろわかりましたので、 調べていろいろ試してみたいと思います。 ありがとうございます。

その他の回答 (2)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

>UrlDecode >の部分に波線が付いてしましましたが、 それは、名前の解決ができてないということです。 ソリューションエクスプローラーから「参照設定」を右クリックして 「参照の追加」をして下さい。 追加するのは、System.Web.Dllです サンプルはコンソールアプリなので、コマンドプロンプトからコンパイルできます。 ファイル名がconv.vbだとすると vbc /r:System.Web.Dll conv.vb でコンパイルできます。

popopompom
質問者

お礼

出来ました! 「猫」と出ました。 %C7%ADだと?となってしまいました。 今ヤフーで試してみたら%C7%ADのようにでましたが、 前回質問させて頂いた時は http://search.yahoo.co.jp/?fr=top の検索窓で試したようです。 こちらですと%E7%8C%ABと出ました。 少し気がかりな感じですがプログラムを進めてみます。 いつも的確なお返事をありがとうございます。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

ヤフーで猫で検索を掛けてみましたけど %C7%AD になりました。これは、文字コードEUCで「猫」です。 >"%E7%8C%AB" は、本当に猫で検索した時のものなんでしょうか? ユニコード(UTF-8)みたいですがとりあえず、ユニコードということでいいんでしょうか?

関連するQ&A