16進数のコードが入った文字列をバイト変数に変換

解決


VB初初者です  2005-10-29 01:16:27  No: 127053

初めて、投稿致します。
VB6が良く分らず、困っています。
多分・・簡単な事だと思うのですが・・・

以下、実現したい事です。

dim aa as string
dim bb() as byte

''文字列aaには、十六進数の文字列が格納されています。
aa = "65E0B115"

aaから、2バイトずつ切り出して、バイナリ変数であるbbに
入力したいのですが、どのような処理を行なえばよいでしょうか?

for  i to len(aa)
bb(i) = mid(aa,i, 2)

next i


Geo=TK3  2005-10-29 02:11:47  No: 127054

2 文字ごとに切り出した文字列を CByte で Byte 型に変換...かな?
試してないけどこんな感じになると思う。

for i = 1 to Len(aa) Step 2
    bb(i) = CByte(Mid$(aa,i,2))
next i


GOD  2005-10-29 02:46:48  No: 127055

>    bb(i) = CByte(Mid$(aa,i,2))
元が16進文字列なので&Hと連結してあげれば。
bb(i) = CByte("&H" & Mid$(aa, i, 2))

#あとForでStep 2するならbbの添え字に注意が必要かと。


Geo=TK3  2005-10-29 02:53:36  No: 127056

>#あとForでStep 2するならbbの添え字に注意が必要かと。
し、しまった (^^;; 。
"&H" はともかく bb の添え字は致命的ミスですね。

GOD さん、フォローありがとうございました m(__;)m 。


名無し  2005-10-29 03:53:55  No: 127057

むしろ&hが重要だと思うんだけど


VB初初者です  2005-10-29 04:05:41  No: 127058

皆様  ご回答ありがとう御座います。
すんなり、解決いたしました。

真にありがとう御座いました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加