Inet1.GetChunk(1024, icString)で1023バイトの文字列が戻る理由


ぴの  2004-05-11 19:34:20  No: 83304

VB6.0 sp5で開発しています。Webサーバは Shift_JIS を返します。

Dim vtData As Variant
vtData = Inet1.GetChunk(1024, icString)

でデータを取得しているのですが、データの最後が漢字の場合
正確にデータがとれません。最後の文字が文字化けします。
調べると取得した文字列のサイズが1023バイトになっていました。
sizelenM = LenB(StrConv(vtData, vbFromUnicode))

GetChunkにicByteArrayを使うとうまく動作するのですが
なぜicStringでうまくとれないのかが疑問なのです。
どなたか教えていただけませんか?よろしくお願いいたします。


ちゃん  2004-05-11 19:47:21  No: 83305

C の世界では、
文字列の最後に \0
( VB で言うところの vbNullChar, Chr(0) )が
含まれます。

多分、そこらへんが関係しているのではないでしょうか?


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

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






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