タグ

itとコード変換に関するyanokのブックマーク (6)

  • Unicode の嫌なところを触ってしまった Python - yanok.net

    Pythonとlibiconv, nkf, Javaのコード変換を比較した記事がありました。 主な実装における EUC-JIS-2004, Shift_JIS-2004 から Unicode への変換結果の違い ASCIIとJIS X 0201の違いに起因する円記号問題とチルダ・オーバーライン問題、それにUnicodeのFTPサイトが原因と思われる全角ダッシュの件という既知の問題が多いので目新しくないのですが (『プログラマのための文字コード技術入門』をお読みいただければわかります)、Pythonについて目新しげな話がありました。 Pythonでは他と違って、二重(白抜き)の括弧をU+FFxxの位置にあるものでなくU+29xxに割り当てているそうです。うむ。そうか、そうきたか。 JISの公式な対応表ではU+FFxxの方になっています。文字名でいうとFULLWIDTH {LEFT|RIGHT

  • 書家の第3水準漢字が文字化けするわけ - yanok.net

    北海道南部の松前町は、20世紀日の書家・金子鷗亭の出身地であり、その影響で書道教育の盛んな町として知られています。 その松前で高校生の書道パフォーマンスの大会が開催されたニュースがありました。 高校生の筆踊る 松前で書道パフォーマンス (函館地域ニュース by 函館新聞社, 2017/5/14付) 金子鴎亭記念書道パフォーマンス 音楽に乗り高校生、揮毫 過去最多13校 きょう出身地・松前で /北海道 (毎日新聞, 2017/5/13付) 上記のうち、函館新聞の方は記事の中にちょっと残念な部分があります。書家の名前が「金子鷗亭」と、「鷗」の字がHTMLの文字参照になってしまっています。40407は16進表記で9DD7にあたります。UnicodeでU+9DD7は第3水準漢字「鷗」の符号位置です。 人手で40407のような数字を入力したとは考えにくい。私の想像ですが、テキストエデ

  • nkfとiconvの差異

    JIS系文字コードとUnicodeとの変換によく使われるnkfとiconvの変換にどれくらい違いがあるのか調べてみました。 EUC-JIS-2004とShift_JIS-2004のファイルをそれぞれUTF-8に変換して、その結果を比較します。 nkf Network Kanji Filter http://sourceforge.jp/projects/nkf/ libiconv http://www.gnu.org/software/libiconv/ 変換元となるファイルについては、プロジェクトX0213の「JIS X 0213とUnicodeの対応表」から、文字付き版のファイルを使用しました。 JIS X 0213とUnicodeの対応表 http://x0213.org/codetable/ EUC-JIS-2004とUnicodeの対応表 文字付き版 http://x0213.o

    yanok
    yanok 2016/10/23
    「JIS系文字コードとUnicodeとの変換によく使われるnkfとiconvの変換にどれくらい違いがあるのか調べてみました」
  • libiconv - JIS X 0213 Wiki

    [カテゴリ:コード変換] 概要 GNU libiconvは、文字コード変換のライブラリおよびコマンドのiconvの実装のひとつです。Free Software Foundationによって、GNUプロジェクトの一環として開発・配布されています。 単体でダウンロードしてビルドできるほか、Windowsで動くCygwinからもインストール・使用できます。 JIS X 0213対応 libiconvはJIS X 0213の符号化方式である Shift_JIS-2004, EUC-JIS-2004, ISO-2022-JP-2004 に対応しています。 名称として、それぞれ、SHIFT_JISX0213, EUC-JISX0213, ISO-2022-JP-3 として指定できます。これらはJIS X 0213:2000における名前ですが、2004年改正版の上記「-2004」と同じ内容です。 ただし

    yanok
    yanok 2016/10/23
    「バージョンによっては、SHIFT_JIS-2004, EUC-JIS-2004 という名前がエイリアスとして定義」
  • Cygwin の iconv で EUC-JIS-2004 や Shift_JIS-2004 - yanok.net

    yanok
    yanok 2016/10/23
    「Cygwinで iconv --list してみたら、SHIFT_JIS-2004 や EUC-JIS-2004 が、それぞれ SHIFT_JISX0213, EUC-JISX0213のエイリアスとして登録されている」
  • 波ダッシュ問題 - JIS X 0213 Wiki

    文字化け 上記の「正しいUnicode符号位置」を用いる変換だけを使っている分には問題を生じませんが、誤った変換が混入すると、変換したコードを元のコードに戻そうとした際に対応先がなくて「?」に化けるなどします。 例えば、波ダッシュ(WAVE DASH) SJIS 0x8160をUnicodeに変換する際に、上記の「誤り」の符号位置 U+FF5E (FULLWIDTH TILDE, 全角チルダ) にしてしまうと、変換後のデータを別のプログラムで再びSJISに戻そうとした時に、U+FF5Eに対応するコードがSJISに存在しないために「?」などに化けてしまいます。 こうしたことが生じるケースは、例えば、Unicodeに変換する時にCP932 (MS932, Windows-31Jなど) のような上記の誤った符号位置に移す変換器を用いてしまい、一方、逆方向の変換には Shift_JIS のような正

    yanok
    yanok 2016/10/18
    「Shift_JISやEUC-JPのようなJIS X 0208ベースのコードからUnicodeに変換する際に、一部の記号の対応するUnicode符号位置がおかしいコード変換の実装がある」
  • 1