• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:S-JISの2バイト文字をURLエンコードするには)

S-JISの2バイト文字をURLエンコードする方法

このQ&Aのポイント
  • VBでS-JISの2バイト文字を正しくURLエンコードする方法について教えてください。
  • エンコード規則は「%上位バイトの16進数%下位バイトの16進数」では足りないのでしょうか?
  • 文字列終端コードに対処するための処理方法や解決法についても教えてください。

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

  • ベストアンサー
  • kmb01
  • ベストアンサー率45% (63/138)
回答No.1

エクセルVBAでテストしましたが… Hex関数が返すのが文字列であるため Format関数で"0000"しても strTmpには正しい値が入っていません。 この場合はstrTmp = Hex(Asc("指")) でいいのでは。 あと指のShiftJISコードは8E77(-29065)のようです。

cocona
質問者

お礼

早速のご回答、どうもありがとうございます! ご指摘頂きました通り、Format()が不正でした。 16進表記にした時に0埋めされるようにという意図でした。お恥ずかしい /// Hex()結果長が4未満なら0を付け足す、といった形にすることにいたします。 エンコードサイトでも、「%8E%77」をデコードしたら無事「指」という結果がでました。 (http://www.tagindex.com/tool/url.html) 「%8Ew」になるのはどういう方式なのでしょう? IISに「%8Ew」と送ると「指」にデコードされるので、適正なエンコードな筈ですが... ともあれ、大変助かりました!心からお礼申し上げます。

関連するQ&A