このサイトのような変換がしたいです。
http://home.kendomo.net/board/decode/
例:
「テスト」→「%E3%83%86%E3%82%B9%E3%83%88」
JavaScriptのencodeURIを使うのが一番簡単ですね。VBScriptからも呼び出すことができます。
WSHでなら、http://russiantea.dip.jp/vbswsh/32を、ASPでなら、http://www.ken3.org/asp/backno/asp098.htmlが参考になります。
少し邪道ですが、VBScript から JScript の encodeURI 関数を呼び出すという方法があるようです。
' File Name : encode.vbs ' Usage : CScript encode.vbs //Nologo Option Explicit Call Main Sub Main() Dim sc Set sc = CreateObject("ScriptControl") sc.Language = "JScript" Dim js Set js = sc.CodeObject Dim strEncodeURL strEncodeURL = js.encodeURI("テスト") WScript.Echo strEncodeURL WScript.Echo js.decodeURI(strEncodeURL) End Sub
<実行結果> C:\home\edu\hatena\yamazakiis\1146809629>cscript encode.vbs //Nologo %E3%83%86%E3%82%B9%E3%83%88 テスト
<スクリプト コントロール 関連情報>
■ JScriptFromVBScript.VBS(VBScriptからJScriptを使う方法)
http://www.vector.co.jp/soft/win95/util/se397376.html
■ Windows Script ノスゝメ
http://russiantea.dip.jp/vbswsh/32
■ Microsoft Scripting Technologies / スクリプト コントロールの概要
https://www.microsoft.com/japan/msdn/scripting/scriptcontrol/sco...
自前で UTF-8 変換を行うのであれば、
■ decodeURL.HTA(Windows95/98/Me/ユーティリティ)
http://www.vector.co.jp/soft/win95/util/se350148.html
の decodeURL.HTA の中の EncodeUTF8() 関数が参考になるのでは?と思います。
自分は下記で公開されている関数をVBScriptに直して利用しています。コードがVBなのでほとんどそのまま利用できます。
いや、VBScriptでお願いします。