[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends-ml 10244] Re: Effective Java 第 4 回議事録



伊藤(哲)です。

前回の読書会での雑談ネタですが

1 Unicodeにおける漢字の扱い
2 住民基本台帳ネットワークで使用されている文字コードは?
3 超漢字はどのような文字コードを取っている?
   コードとグリフ(字形)は別なのか?
などなどを知っている&調べた範囲でまとめます。

1 Unicodeにおける漢字の扱い
 Han Unificationにより、似た字形の文字が統一され
中日韓の文字が区別できなくなっています。つまり
中国語の「一」も日本語の「一」も同じく\u4E00で
表現されるということです。これでは中日が混じった
テクストなどでは、ある文字がどちらの言語の文字かを
区別する方法がありません。つまり多言語環境を
構築する手段としては失格です。
see:  http://www.unicode.org/charts/


2 住民基本台帳ネットワークで使用されている文字コード
 「統一文字コード」と呼ばれる Unicode亜種を使用している
ようです。
see:  http://www.horagai.com/www/moji/juki.htm#s2
see2: http://www.kajo.co.jp/digital/perfect.html
上記情報によると、どうも各ベンダーの独自外字を寄せ集めて
作っているようです。(各ベンダーと住基ネットへの関与は不明)
Unicode CJK漢字(中日韓の漢字)に存在しない文字は別領域に
マッピングしている。また、統一文字コードにも存在しない
文字は画像で外字を送るそうである。
 つまり住基ネットでのテキストデータは画像情報も含むということ
になる。XMLでも使用してるのだろうか。基本的に日本語のみを
対象としているので、多言語環境を構築することは出来ない。
かといって、日本語の一部を画像で代用しているようなお寒い
現状では日本語用コードセットとしても失格です。
#近いうちに住基ネットは作り直しとの噂もあるようです。
##省庁からの情報が見つからなかったため、情報の信憑性は
##各自の判断で。。


3 超漢字はどのような文字コードを使用しているのか
 TRONコードです。これは16ビットの面を16ビットコードで
切り替えるものです。現在は31面が割り当てられていますが
理論上は 32log10(2)桁、、えー数億個のコードが利用できる。
と言うコードです。そして字形が異なる文字にはすべてコードが
振られている。10万文字を越える文字にコードを具体的に
割り当てられている。など、多言語環境を構築するのに適した
文字コードといえます。


以上Javaとはあまり縁の無い話でした。
#JavaでもTRONコードのように m17nを意識した改良は??

-- 
Tetsu Ito <Tetsu_Ito@xxxxxxxxxxxx>