| No.382 | 投稿日時: | 2006/06/27(火) 17:35 <↑親記事:No.381> |
| 投稿者: | 森山 将之 |
> 【使用目的】
> shift-jis, euc-jpをiso-2022-jpに変換
> 【バージョン】
> iconv (GNU libc) 2.3.2
との事ですので、sjis -> iso-2022-jp, euc-jp -> iso-2022-jp という変換だけに限定しますと、次のような問題が考えられます。
バグ
・あ\ などのように、いわゆる全角文字の直後に \ がある場合、\ が全角文字の \ に化けてしまう。
この問題に関しては、すでにバグ報告が上げられ glibc の最新版では直っていたと思います。
$ printf "\xa4\xa2\x5c" | iconv -f euc-jp -t iso-2022-jp | od -tx1
0000000 1b 24 42 24 22 21 40 1b 28 42
0000012
仕様?
・JIS X 0208 で定義されていないコードポイントに関しては EILSEQ エラーになります。(一般には機種依存文字と呼ばれるものです。)
・iso-2022-jp JIS X 0201 片仮名(いわゆる半角カナ) は含まれていないので、半角カナで変換エラー (たぶん EILSEQ)
と、こんな感じです。