Tips というより開発時に調べた Script 等を忘れないように書き留めた覚え書きです。
最近はここに書き留めておくことも忘れている始末で、我ながら情けなく思う今日この頃です。
ということで、不定期更新というか最近更新していませんが、JavaScript や VBScript などを紹介していきますのでご参考になれば幸いです。

文字列のバイト数をカウントする

文字数ではなく、バイト数を数える処理です。
文字列を1文字ずつ確認し、1バイト文字の場合は1を足し、2バイト文字の場合は2を足した合計を返します。

/****************************************************************
* バイト数を数える
*
* 引数 : str 文字列
* 戻り値: バイト数 
*
****************************************************************/
function CountLength(str) {
    var r = 0;
    for (var i = 0; i < str.length; i++) {
        var c = str.charCodeAt(i);
        // Shift_JIS: 0x0 ~ 0x80, 0xa0 , 0xa1 ~ 0xdf , 0xfd ~ 0xff
        // Unicode : 0x0 ~ 0x80, 0xf8f0, 0xff61 ~ 0xff9f, 0xf8f1 ~ 0xf8f3
        if ( (c >= 0x0 && c < 0x81) || (c == 0xf8f0) || (c >= 0xff61 && c < 0xffa0) || (c >= 0xf8f1 && c < 0xf8f4)) {
            r += 1;
        } else {
            r += 2;
        }
    }
    return r;
}

サンプル

ページの先頭へ