プログラマのための文字コード技術入門 第7章「プログラミング言語と文字コード」その2

今日から第7章の続き、Java での文字コードの扱い、サロゲートペアのあたりからです。

  • サロゲートペアに対応するため char 型で文字を扱うメソッドに対応する int 型で扱うメソッドを追加(JDK 1.5から)
    • ex) charAt() -> codePointAt()
    • 直接文字列の文字を操作するプログラムでは書くほうが新しい API を注意して使ってあげないといけない
  • コード変換は Reader/Writer で勝手にやる
  • プロパティファイル(設定ファイルみたいなもの)は ISO/IEC 8859-1 のみサポート。Unicode エスケープで表現しないといけない
    • native2ascii で変換できる
    • XML 形式のプロパティファイルなら文字コードを指定できるのでそのまま書ける(JDK 1.5から)
    • JDK 6 からはプロパティファイルも文字コードを指定できるようになって Unicode エスケープは不要になった
    • しかしリソースファイル(プロパティファイルにメッセージなど多言語を詰め込むの)はやはり読めなくなった

なんだか一進一退という感じです。まだまだ続きます。