プログラマのための文字コード技術入門

サポートページ

この記事を読むのに必要な時間:およそ 0.5 分

補足情報

P.356 「ファイル交換の際のトラブル」項(の最終段落末尾)の補足

なお,iconvで「UTF-8-MAC」という場合,Unicodeの正規化仕様に厳密に従ったNFDではなく,p.355で説明した互換漢字の置き換えをしないNFDが適用されます。

お詫びと訂正

本書掲載の記述に誤りがありました。ここに訂正し,深くお詫び申し上げます。

(2010年2月25日更新)

第1刷,第2刷をお持ちの方

P.301 最後の段落

「一方,UTF-16...」以降~段落末尾までの記述について補足:UTF-16では制御文字CRのバイト表現は00 0Dのような連続した2バイトになるので,trで削除するということ自体そもそもできず,適当な例ではありませんでした。

trの代わりに,Perlなどを使って00 0Dというバイト列をただ削除すると,たとえばU+4E00 U+0D05という文字の並びに対応するバイト列4E 00 0D 05の途中2バイトも対象になってしまい,やはりテキストデータを壊してしまいます。

なお,ここの解説での主旨は,UTF-16にはASCII制御文字のバイトも文字のコード値の中に現れるので注意が必要という点です。


P.363 7行め

末尾に一文を追加。

ただし,新規追加される絵文字の中には,面01でなくBMPの既存のブロックに追加されるものも一部あります。

第1刷をお持ちの方(第2刷以降,修正)

P.25 3行め
イギリス,フランス,スウェーデン,ドイツ,中国等
イギリス,フランス,スウェーデン,ドイツ等

補足:該当の記述部分で列挙するには適当ではないため訂正。中国にはGB 1988というISO/IEC 646国際基準版を元にした文字コード規格がありますが,GB 1988は符号位置2/4を円記号(¥)にするという変更を行なっていて,基本符号表の枠組みに基づいた変種ではありません。