プロが教えるわが家の防犯対策術!

こんにちわ。
VB6でのすごく初歩的な質問なんですが、テキストボックスの中の文字のバイト数をLenB関数で取得して表示させようとしたのですが、半角も全角も1文字2バイトとでてしまいますがなぜでしょうか?
お暇なときで結構ですのでどなたか回答をおねがいします。

A 回答 (2件)

VB6は分かりませんが、VB5までの32Bit版VBでは、内部の漢字コードが


Unicodeを使用していました
Unicodeは、半角も全角も全て2バイトで表現されているため、そういう現象が
発生します

StrConvという関数を使い、UnicodeをANSIに変換してやることで、この問題は
解決します

詳しくは、VBのマニュアル、ヘルプ等でStrConvを検索するか、以下のサイト
(MicroSoftのVBに対するFAQ)をご覧ください・・・下の方に載ってます

参考URL:http://www.microsoft.com/japan/developer/vbasic/ …
    • good
    • 0

VBの内部ではユニコードのため半角も2バイトです。

LenBではなく別の関数があるはずですが。

ACCESSとVBscriptの例ですが参考URLをどうぞ。

http://www.joho-miyagi.or.jp/member/access1/leng …

http://www.users.gr.jp/ml/archive/ASP/7403.asp
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!