MySQL と Unicode Collation Algorithm (UCA) - かみぽわーる に関連するトピックで、MySQL には寿司ビール問題というのがある。 寿司ビール問題どっかで詳しくお話を聞くべきだよなぁ。。。— RKajiyama (@RKajiyama) March 18, 2015 これはどういう問題かというと、MySQL の Unicode では binary collation にしてコードポイントで比較しないと🍣と🍺に限らず絵文字が同値判定されるという問題です。 あれ?MySQL の utf8mb4 charset って、4バイト文字同士を比較すると同じ文字扱いされる? SELECT '🍣'='🍺' → 1MySQL的には寿司とビールは同じ扱い。— とみたまさひろ (@tmtms) December 22, 2014MySQLで select
はじめに 二人を最初から一つにしておけば、何も問題など起こらなかったのだ。 一つのものを二つに分けたその時から、長い物語が始まる。 おや?また会いましたね。どうも、文字コードおじさんです。 もう半年近くも前になりますが、前回の投稿はだいぶ反響があったようで驚いております。ありがとうございます。 今回も文字コードネタですが、Unicodeにおける結合文字列を取り上げてみようと思います。 高度に発達した文字コードは地獄と見分けがつかない 次の画像はTwitterの投稿フォームですが、おかしな点があります。わかりますか? そうです。4文字しか入力していないはずなのに 5文字分とカウント されていますね。おかしいと思いませんか?あなた? 改行とかスペース入れてるんじゃねーだろうな?とか言わないで下さいね? さらに次の画像を見てみてください。 こちらは4文字とカウントされていますね。先のものとは一体

なんか,全角チルダ「〜」が文字化けするという苦情が来ました.Linux上のRubyで文字処理をして,Windowsユーザに提供するプログラムを書いた時の話です. 調べると,こんな感じに,確かに妙に文字が変化しました. // Shift_JISに変換したあとに,UTF-8に変換して表示してみる #ruby -e 'require "kconv"; a="〜"; print a.tosjis.toutf8,"\n";' 〜 // JISに変換したあとに,UTF-8に変換して表示してみる #ruby -e 'require "kconv"; a="〜"; print a.tojis.toutf8,"\n";' 〜 // EUCに変換したあとに,UTF-8に変換して表示してみる #ruby -e 'require "kconv"; a="〜"; print a.toeuc.toutf8,"
2008年06月06日12:00 カテゴリLightweight Languagesperl/Encode - 7bit-jis != iso-2022-jp ちょちょまwww 半角カナ対応 - UnderDone(あんでるどん)の落書き IS2022JPの半角カナ対応 -perl-mongers.org WIDE系IRCで使われている、IS2022JPの(いわゆる)半角カナにはいろいろ種類がありますが、これをPerlでコード変換しようとした場合、Encodeモジュールではコード変換に失敗してしまいます。(2008年6月6日0:20追記:Encodeモジュールでは半角カナの認識に失敗するだけで他のコードは自動認識します) それは、文字コードそのものが微妙ながら決定的に違うのです。 Encodeのマニュアルにもちゃんとこのことは書いてあります。perldoc Encode::JP 7

Encode - 規格のバグまでは直せませんにコメントしながら思ったのだが、JIS X 0208の1区33点「波ダッシュ」をUnicodeに変換する際、U+FF5EのFULLWIDTH TILDEに変換するのは明らかに間違いだ。この件に関して、私が知る限りのことを、ここに記しておこうと思う。 平成5年度のUCS調査研究委員会WG1において問題となったものの一つが、既存のJISの文字コードとISO/IEC 10646との対応をどうするかだった。JIS X 0208-1990の1区33点「波ダッシュ」に対しては、U+223C、U+223D、U+223E、U+223F、U+301Cが候補となったが、結局U+301Cと対応させることとなった。U+301Cの名前がWAVE DASHだったからである。ただし、ISO/IEC 10646-1:1993のU+301Cの例示字形は、JIS X 0208の「波
2007年04月17日22:30 カテゴリLightweight Languages CPAN - HTTP::Response::Encoding Released! HTTP-Response-Encoding を Release したのでお知らせします。 on CPAN (coming soon) http://www.dan.co.jp/~dankogai/cpan/HTTP-Response-Encoding-0.03.tar.gz どういうものかというと、こういうものです。 use LWP::UserAgent; use HTTP::Response::Encoding; my $ua = LWP::UserAgent->new(); my $res = $ua->get("http://www.example.com/"); warn $res->encoding; prin

#前に社内wikiに書いておいたのを公開してみるテスト。 Catalystでマルチバイトを扱う機会があるのは主に ユーザーがフォームで入力する値 ($c->req->param()) データベースからの入出力 (DBIx::Class) それ以外の文字列の評価 View::TTによる出力の生成 FillInFormによるフォームの埋め込み HTTPレスポンス です。 ここでは以下の条件でまとめてみました。 文字コードはUTF8に統一 データベースにはmysqlを使用 下準備 テンプレート、perlのコードは全てUTF8で書きます。mysqlの文字コードの指定は/etc/my.cnfに [mysqld] default-character-set = utf8 skip-character-set-client-handshake [mysql] default-character-set
Sambaのunix charsetはLinuxでの生活を考えてEUC-JPにしていたのだが、ウチからLinuxなクライアントマシンが居なくなってしまったのと、イマドキのLinuxはフツーja_JP.UTF-8でしょ? ってことでUTF-8にすることした。 やることは二つ smb.confのunix charsetをUTF-8に書き換えるすでに保存されているファイル名をEUC-JPからUTF8に変換する。ファイル名の変換にはconvmvを使った。以下のようにして使うと、再帰的にディレクトリをもぐっていって、ファイル名を変換してくれる。ファイル名に変な記号が入っていても変換してくれたので、変換精度は割と良いのじゃなかろうか。 convmv --notest -f euc-jp -t utf8 -r * 余談だけど、PREタグを使うと、空行の開き具合が大きい気がするな。
最終更新 2003-11-11 UCSとUTF ユニコードで文書を作るとき,文字コードの方式が2種類,あるいはそれ以上あることに気が付かれるかもしれません。例えば,一つはUnicodeとあるのに対し,もう一つはUnicode (UTF-8)と表記されているかもしれません。この2つは,また,その違いは何でしょうか(前者はUTF-16の一形態なのですが…)。 UCS-2とUCS-4 ユニコードが採択されることになった多言語用の文字コードセット,ISO-10846-1は,16ビット(16桁の二進数)でそれぞれの文字を表します。それをUCS-2 (Universal Character Set coded in 2 octets,「2つのオクテットでコードされたユニバーサル文字セット」)と称します。オクテットとは文字長の単位としての8ビット(8桁の二進数)のことです。 ユニコードの特定の文字は,例
2007年01月15日05:00 カテゴリLightweight Languagesperl - 半角スペースを自動で入れる 是非はさておき、入れるのであれば自動で入れたい。というわけでこちら。 portal shit! : 半角スペース入れてますか? 半角スペース入れるべき、入れないべき?spacer.pl #!/usr/local/bin/perl use strict; use warnings; use Encode; my $east = qr/(?!\p{M})(?:\p{Han}|\p{Katakana}|\p{Hiragana})/; my $west = qr/(?!\p{M})(?:\p{Latin}|\p{Greek}|\p{Cyrillic})/; binmode STDOUT, ':utf8'; while(<>){ $_ = decode 'utf8', $_

[Perl] Encodeモジュールで文字コードの変換ができるが、MIMEエンコードをするには以下のようにすればよい。
とりあえずこんなお知らせ(?)を、学内MLに流しました。 適当に御利用下さい。 ---------------------------------------- マイクロソフトが提供する Internet Explorer の最新版 IE7 をインストールしたあと、ファイル名に全角文字(漢字)を含むファイルを、「Yahoo! ブリーフケース」「デジタルトランクサービス」「Internet Disk」などのアップローダーなどからダウンロードすると、ファイル名が化けることがあります。 文字化けが発生する代表的な漢字は、以下のものです。 噂浬欺圭構蚕十申曾箪貼能表暴予 禄榎掛弓芸鋼旨楯酢掃竹倒培怖翻慾 例えば、予算書.xls のようなファイルを、「Yahoo! ブリーフケース」でやりとりしようとすると、このような問題が起こります。
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く