人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

UTF-16の文字列の(バイト数ではなく)文字数を数えるにはどうしたら良いですか? 先頭のビットを見れば良いでしょうか? 範囲の出ているサイトも教えてください。

●質問者: nekomilk
●カテゴリ:コンピュータ
✍キーワード:UTF-16 サイト バイト ビット 文字列
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● tokyo_xjp
●0ポイント

http://ash.jp/code/index.htm

$BJ8;z%3!<%I$K$D$$$F(B

こちらのサイトが参考になりませんか


2 ● zetaplus
●50ポイント

http://www.d2.dion.ne.jp/~imady/charset/ucs.html

UCS と Unicode

UTF-16は基本的に2バイトで構成されますので、2バイトずつ見ていけば文字列長はわかります。

但し、UTF-16の場合バイトオーダーの関係でBOM(バイトオーダーマーク)が付くことがあります。ですからBOMをスキップする処理が必要です。なお、UTF-16BEやUTF-16LEの場合には、通常BOMは付けません。

またUCS-2で表せられない文字(0x10000?0x10ffff)の場合、サロゲートと言う方法で表現します。その場合、4バイトで1文字を表します。ですので、サロゲートの判定処理も必要になります。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ