タグ

2010年11月4日のブックマーク (5件)

  • 404 Blog Not Found:perl - Encode 入門

    2008年04月09日01:00 カテゴリLightweight Languages perl - Encode 入門 すでにOSCONでもYAPCでも、あちこちそちこちでこの基方針に関しては話したのですが、ここ 404 Blog Not Found でも改めて。 Perl で utf8 化けしたときにどうしたらいいか - TokuLog 改め だまってコードを書けよハゲ 入り口で decode して、内部ではすべて flagged utf8 で扱い、出口で encode する。これがすべてです!とにかくこの基方針をまもっていれば幸せになれます。ここでは、EUC-JPでエンコードされたファイル中の「小飼弾」「こがいだん」「コガイダン」「Kogai Dan」を正規表現で書き換えて標準出力にEUC-JPで出力するプログラムを例にとって説明します。 decode() then encode(

    404 Blog Not Found:perl - Encode 入門
    masa_matya
    masa_matya 2010/11/04
    decode=>encodeが一番基本の流れ
  • Encode::Guess -- データからエンコーディングを推測する

    NAME SYNOPSIS ABSTRACT DESCRIPTION CAVEATS TO DO SEE ALSO NAME Encode::Guess -- データからエンコーディングを推測する SYNOPSIS # if you are sure $data won't contain anything bogus use Encode; use Encode::Guess qw/euc-jp shiftjis 7bit-jis/; my $utf8 = decode("Guess", $data); my $data = encode("Guess", $utf8); # これはうまくいかない! # もっと念入りなやり方 use Encode::Guess; my $enc = guess_encoding($data, qw/euc-jp shiftjis 7bit-jis/);

    masa_matya
    masa_matya 2010/11/04
    guess_encoding($data, qw/shiftjis MacJapanese cp932/);はダメな例標準エンコーディングと、それに対応するベンダーコーディングを混ぜてはいけない
  • Perlゼミ(サンプルコードPerl入門)

    Perl入学式 全6回のPerl入門講座。東京、大阪、沖縄、札幌で開催。(東京は4月と10月スタート、それ以外は5月スタート) YAPC::Japan Perlを軸としたITに関わる全ての人のためのカンファレンス。 東京 吉祥寺.pm 五反田.pm 大阪 なにわPerl 沖縄 沖縄.pm

    masa_matya
    masa_matya 2010/11/04
    スカラにファイルの内容を全て代入する場合は、$\をundefにすればOK
  • perl utf8→sjisで文字化け - (゚∀゚)o彡 sasata299's blog

    2008年07月25日23:32 Perl perl utf8→sjisで文字化け 以前のEncodeモジュールの話に関連した話なんですが、 今日、ある症状が出て困っていました。utf8を、sjisにした際に「〜(波ダッシュ?)」や「−(全角のマイナス)」が文字化けしてしまったのです(;´Д`) とりあえずその場は「Unicode::Japanese使えば大丈夫だよ」と教えていただいて対処したんですが、どうにも府に落ちなくてちょっと調べてみました。そしたらありましたよ、解決策が.。゚+.(・∀・)゚+.゚ もともと、 encode('shift_jis', decode_utf8($str)); こんな感じでutf8からshift-jisに変換していました。これを encode('cp932', decode_utf8($str)); とすることで、無事文字化けすることなく変換できました。

    masa_matya
    masa_matya 2010/11/04
    cp932,MacJapaneseに注意
  • 第32回 Encode:日本語だけ扱えればよいのではなく | gihyo.jp

    一般的には推奨されないencodingプラグマ 前回取り上げたencodingプラグマは、簡単なjperl用のスクリプトを移植したい場合には便利ですが、perlunifaqというPerl付属のマニュアルにははっきり「Don't use it.」と書いてあるくらい、一般的には使えないプラグマと認識されています。 前回も見たように、encodingプラグマが対応しているのは、ソースコードに埋め込まれている文字列やそれに類する正規表現、そして標準入力からのデータを指定された文字コードからPerlの内部表現に変換し、標準出力へ出力する際には内部表現を指定された文字コードに変換することだけです。ほかのファイル入出力部分や、コマンドラインから受け取った引数、標準エラー出力などの変換は行わないので、ちょっと凝ったことをしようと思うと、結局「外から入ってきたものはデコード、外に出すものはエンコード」という

    第32回 Encode:日本語だけ扱えればよいのではなく | gihyo.jp
    masa_matya
    masa_matya 2010/11/04
    use Encode 文字コードの取り扱い