String型の文字列をByte配列に格納する時、1バイトづつByte配列に格納しているのですが、とても面倒なので、ほかのやり方を探しています。
もし、ほかの方法をお知りでしたら教えてください。よろしくお願いします。
一個一個コードを書いてやってませんか?
ループを使えば、大して面倒ではなくなると思いますよ。
for i := 0 to LenB(Str) do 処理
VBのForの構文を忘れてしまったので、Delphiので書いてしまいました(^^ゞ
確かVBとDelphiのはほとんど同じ構文だったと思うので、これで勘弁してください^^;
配列は動的配列として宣言し、
あとでLenBを指定してあげれば問題ないでしょう。
こちら、記憶があいまいなので、ヘルプでちゃんと確認してください(-_-;)
VB6までであれば、
Dim S As String
Dim B() As Byte
S = "魔界の仮面弁士"
B = S 'Unicodeのまま、バイト配列に格納
'B = StrConv(S, vbFromUnicode) 'Shift_JISに変換してから格納
という感じにすればOKです。
VB.NETの場合は、System.Text.Encodingを利用してください。
ツイート | ![]() |