タグ

UTF-8に関するuneasyのブックマーク (4)

  • UTF-8からSJISに文字化けすると糸偏の漢字がよく出てくる - Qiita

    はじめに Twitterで、文字化けネタを幾つかつぶやきました。 サッちゃんはね サチコっていうんだ ほんとはね だけど ちっちゃいから 自分のこと SJISで 保存するんだよ おかしいな 繧オ繝ちゃん — ロボ太 (@kaityo256) 2017年10月10日 「私 魔女のキキです。こっちはSJISの繧ク繧ク」 — ロボ太 (@kaityo256) 2018年1月6日 UTF-8「もしかして…」 SJIS「私達…」 「「入れ替わ縺縺ヲ繧九≦縲懶シ†」」 — ロボ太 (@kaityo256) 2018年2月13日 どれもUTF-8で保存された文字をSJISとして解釈したための文字化けを表現したものですが、パッと見で「糸偏の漢字が多いな」ということがわかるかと思います。なぜそうなるかを簡単に説明してみようと思います。 なお、文字コードはいろいろ面倒なので、ここではざっくりとしたことしか言い

    UTF-8からSJISに文字化けすると糸偏の漢字がよく出てくる - Qiita
    uneasy
    uneasy 2018/02/16
  • Linux のコマンドラインでオフライン英和辞書 - Qiita

    英単語の意味を調べようとブラウザ開いてぐぐったら2秒以上かかって、イライラしてPCを蹴ったらバタフライ効果で地球が消滅した」といった事態を未然に防ぐための記事。考え方によってはこの記事が地球を救ったとも言える。 「なんか apt-get で取れるいい感じの英和辞書があるだろう」と思ったけど意外にも見つからないので、それなら英単語とその意味だけがズラズラ載ってるテキストファイル無いかな、と思って探したらあった。 GENE95 辞書 デフォルトでは SHIFT-JIS なので UTF-8 にしておく。

    Linux のコマンドラインでオフライン英和辞書 - Qiita
  • ActiveRecordでデフォルトの照合順序を変更する - Qiita

    MySQLには文字列の照合順序(collation)というのがあって、MySQL側でのcharset utf8のときのデフォルトの照合順序はutf8_general_ciです。 ActiveRecord::Migrationでは明示的に照合順序を指定しない場合、charset utf8で照合順序utf8_unicode_ciのデータベースを作成しますが、これは少なくとも日語圏では多くの人が期待する挙動ではないと思われるので注意が必要です。 たとえば、以下のようなファミリーテーブルをrake db:migrateすると # coding: utf-8 class CreateFamilies < ActiveRecord::Migration def change create_table :families do |t| t.string :name t.string :relation

    ActiveRecordでデフォルトの照合順序を変更する - Qiita
  • PHPのmb_ereg関数群は不正な文字エンコーディングをチェックしない

    PHPのbasename関数には、マルチバイトに対応していないという誤解(実際にはロケールの設定をすればマルチバイトでも使える)があったり、不正な文字エンコーディングをチェックしないという課題があったりで、イマイチだなーと思っている方も多いと思います。 そういう方々が、preg_replace(u修飾子つき)やmb_ereg_replaceを用いて代替関数を作成している解説も見かけますが、それではこれら正規表現関数は不正な文字エンコーディングをチェックしているのだろうかという疑問が生じます。 ざっと調べたところ、以下の様な状況のようです。 preg_replace : 不正な文字エンコーディングをチェックしている mb_ereg_replcae : 不正な文字エンコーディングをチェックしていない ここでは、mb_ereg_replaceが不正な文字エンコーディングをチェックしない状況と、そ

    PHPのmb_ereg関数群は不正な文字エンコーディングをチェックしない
  • 1