ホームページ目次前の話次の話

今年はよく壊れた年、来年は修復の年

2003年12月31日

もう数時間で、今年も終ろうとしている。 それにしても、今年は様々なものが壊れた年である。 ハードディスクは沢山壊れ、ついでにメモリまで壊れてしまって交換になってしまった。 メモりまでが壊れてしまうのは久し振りだ。 他にも色々あったが、取り換え可能なものは実に簡単だ。 いくつかは取り換え不可能で、諦めるしかなかった。

さて、今年から久々にJavaのプログラムをごちょごちょ書く羽目になってしまった。 長い間、Javaのプログラムを書かないでいたら、バージョンは上るは、 なんだかJavaは巨大な怪獣に育っているは、 MicrosoftとSun microsystemsの間でJavaに関する揉めごとはあるはで、 Javaの世の中は物騒な状態になっていたのであった。

大昔、といってもJavaがやっと1.0になるかならないかのころ、何とか日本でも Javaを普及させようという活動があり、引っぱり出されたことがあるが、 もう6、7年も前のことになってしまうようだ。

Javaで、1つだけ非常に気になっていたことは、Javaの内部でunicodeを 採用していることだった。unicodeの是非は、これも太古の昔大変ん盛んに 議論されたものだが、とにかくJavaで採用されてしまったことは事実である。

さて、困ったことは、Javaで日本語を扱う部分を作らなければならなくなった。 一応、これでも昔は日本語情報処理なるものに首を突込んでしまい、 さまざまな問題に翻弄された苦い経験があるので、Javaで日本語を扱うのは、 できることなら避けたい内容なのである。

javaでも普通の漢字は、だいたい正常に表示されるので問題ないのだが、 記号は非常に頻繁に文字化けを起してしまう。 どういう文字が、どういう風に文字化けするかなど、 詳しいことはGoogleなどで、Java と 文字化け の2語をキーに検索すれば、大量に出てこよう。

例えば、「〜」は文字化けをよく起す典型的な記号である。 SHIFT-JIS, EUCなど既存の文字コードと、Unicodeとの間で、コード変換を 繰り返すと、元に復元せず、どんどん文字データが壊れていってしまうのである。

色々文字化けが発生するのだが、それは、何を使うかで化け方も色々である。 化けないようにするには、しっかりしたコード変換にすれば済むだけの話なのだが、 既に普及してしまったものの中に、変なコード変換をするものが存在することである。 多くは、コード変換を気にしなくても良いように親切につくられているのだが、 これが本当に困りものなのである。つまり、こっそり誤ったコードに変換 されてしまうのである。

原因はハッキリしていて、JIS X 0208 と Unicode の間で、 変換表をきちんと決めずに、変換ツール毎に適当に行われてしまったためなのである。 こうなるのではないかと懸念していた通りになったので、 個人的には予想が的中という喜ばしいこと、「それみたことか」という状態である。

しかし、傍観者でいられない状況になってしまったのである。 というのは、文字コードが壊れてしまうのを修復するソフトを 来年早々から作らないといけないのである。 こっそり壊されるので、こっそり直すソフトである。 でも、本当に可能なのだろうか?

2004年はどんな年になるかなぁ。 Unicodeにご利益のある神社にでも初詣するかなぁ。 そんな神社あったかなぁ。


ホームページ目次前の話次の話