まつもと ゆきひろです
In message "Re: [TShack:269] Re: ちょっと整理してみますか"
on Mon, 31 Dec 2007 17:01:58 +0900, davi <davi-1984@...> writes:
|>細かいこというと、UnicodeといってそれはUTF-8で表されているものを
|>扱えばいいのか、
|
|BOMなしリトルエンディアンのUTF-8(が一番普通ですよね?)が
|良いんじゃないでしょうか。但しサロゲート対応アリね。
この部分、ちょっと引っかかりました(木村さんとは別の意味で)。
BOMはともかく、UTF-8において
* リトルエンディアン
* サロゲート対応
とはどういう意味なんでしょうか。まず、第一にUTF-8はバイト単位
のエンコーディング方式ですから本来エンディアンは無関係のはず
です。なのに「リトルエンディアンのUTF-8」とはいったいどのよう
なものか。
さらにサロゲート対応というのも分かりません。サロゲート(ペア)
は16ビットしかなかったUCS2でBMP外の文字を表現するためにUCS2の
特定の領域に属する2 文字(4バイト)でBPM外の1文字を表現するエン
コーディング手法であると認識しています。UTF-8はBMP外でも
Unicodeのすべてのコードポイントを表現できますから、本来サロゲー
トは不要です。一部の処理系(やアプリケーション)では、サロゲー
トペアを構成する2文字を別々にUTF-8の文字として符号化した方式
を採用していますが、これはUTF-8に類似していてもUTF-8ではあり
ませんし、万が一そのまま外に流されると大変な迷惑です。
というようなことを踏まえると、
|BOMなしリトルエンディアンのUTF-8(が一番普通ですよね?)が
|良いんじゃないでしょうか。但しサロゲート対応アリね。
というのはUTF-8についてあまりご存じない状態での発言のように
聞こえるのですが、あるいは私の知らないなにかがあって、このよ
うなものが求められている可能性は否定できないので、この際、真
意をお聞きしておこうかなあと。
まつもと ゆきひろ /:|)