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

解決


VB初初者です  2005-10-28 16:16:27  No: 127053  IP: [192.*.*.*]

初めて、投稿致します。
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-28 17:11:47  No: 127054  IP: [192.*.*.*]

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

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

編集 削除
GOD  2005-10-28 17:46:48  No: 127055  IP: [192.*.*.*]

>    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-28 17:53:36  No: 127056  IP: [192.*.*.*]

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

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

編集 削除
名無し  2005-10-28 18:53:55  No: 127057  IP: [192.*.*.*]

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

編集 削除
VB初初者です  2005-10-28 19:05:41  No: 127058  IP: [192.*.*.*]

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

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

編集 削除