2003/04/11(金) [n年前の日記]
#1 [prog] 漢字コード
日記の過去ログをhnfに変換するPerlスクリプトを記述中。タイトルをつけていなかった頃の過去ログなので、本文の最初のあたりをsubstrで一部切り出して仮タイトルにしようとしたが問題発生。漢字1文字が2byteで扱われる為、1byteだけ切り出してしまい文字化けする箇所が多々見受けられる。
◎ UTF8 :
UTF-8で処理すれば漢字1文字も正しく1文字として処理できるとの話なのだが、jcode.pmを利用して、sjis→utf8→substrで切り出し→eucにしてみても結果は同じ。うーん。現在使ってるActivePerlは5.6.1。
_ここ
を見る限り、5.6.1と5.8.0ではUnicode関係の処理が大きく異なっているらしい。もしかするとそれも関係しているだろうか。
◎ jfold :
結局、jcode.pmのjfoldを利用してsubstrの代わりにした。UTF8は使わずEUCのみで処理。
[ ツッコむ ]
以上です。