例えば、文字列「あいう」のURLEncode結果は以下のとおりです。
SJIS:%82%A0%82%A2%82%A4
EUC :%A4%A2%A4%A4%A4%A6
UTF8:%E3%81%82%E3%81%84%E3%81%86
エンコードの種類とエンコード文字列を引数にとり、String型変数を返す関数を作成したいのです。つまり、
s = URLDecode(”SJIS”, ”%82%A0%82%A2%82%A4”) ’ s=”あいう”
を実現する関数です。いろいろ調べたのですが、その内部ロジックがわかりません。
この方法について記述されたサイトがありましたら、教えてください。ASP限定です(ASP.Netなど他の言語は不可)
最終的にやりたいことは「検索サイトで入力された検索キーワードをログから集計する」です。
回答欄に、直接ロジックを書かれてもかまいませんが、要件を満たすものでなければポイントは差し上げられませんのでよろしくお願いいたします。
動作確認まではしておりませんが、こちらのスクリプトソースが
ご要望のものではないかと思うのですが、文字コード変換に別途BASP21を
利用しています。
http://www.hi-ho.ne.jp/babaq/basp21.html
BASP21 DLL
BASP21コンポーネントはこちら。
http://www.vector.co.jp/soft/win95/util/se316693.html
iconv.VBSの詳細情報 : Vector ソフトを探す!
BASP21を利用したくない場合は、VBSでコード変換ロジックを書く必要があります。
上記URLのソースが参考になりそうです。
ちらっと見たところADOを利用してコード変換を行うようです。
回答ありがとうございます!
でも、うーん、これとはちょっと違うのです。
いわゆる文字列の文字コード変換(SJIS、EUCなどの相互変換)をやりたいのではなくて、日本語文字列をURLエンコードされた文字列(%82%A0%82%A2%82%A4)などを、元の日本語に戻したいのです。
例えば、Yahooのサイトで「はてな」で検索すると、検索結果のページのURLは以下のとおりになります。
http://search.yahoo.co.jp/bin/search?p=%A4%CF%A4%C6%A4%CA&fr...
このURLに含まれる「%A4%CF%A4%C6%A4%CA」の部分を、元の日本語に戻してくれるASPスクリプトを書きたいのです。
引き続き回答を待ちますので、よろしくお願いいたします。