タグ

encodeに関するkamipoのブックマーク (5)

  • perl - $PerlIO::encoding::fallback の謎 : 404 Blog Not Found

    2009年07月07日07:30 カテゴリLightweight Languages perl - $PerlIO::encoding::fallback の謎 すびばせん。それ、ドキュメントバグです。 PerlIO の encoding layer の fallback ではまった - daily dayflower Encode - character encodings - search.cpan.org をみるとわかるように,FB_XMLCREF は XMLCREF | LEAVE_SRC なんだけど,いろいろ試行錯誤してるとどうやら LEAVE_SRC が悪さをするらしい。 $PerlIO::encoding::fallbackを指定するときは、FB_*を使ってはいけません。 今からその理由を説明します。 Encode::LEAVE_SRCって何さ? まずは、Encode::FB

    perl - $PerlIO::encoding::fallback の謎 : 404 Blog Not Found
  • 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 入門
  • encode/decode より find_encoding のが速いのは知ってたけどここまでか - だるろぐ

    今更ネタが続く。 くりかえしdecode()とencode()する場合には、OOインターフェースを使った方が高速です。なぜなら(de|en)codeが文字コード名を解決する手間がなくなるからです。 404 Blog Not Found:perl - Encode 入門 と言われているのは知ってたけど実際は毎回 decode('euc-jp', $str) とかしてて実際どんくらい違うのかなーとふと思って use strict; use warnings; use Benchmark qw/:all/; use Encode qw/find_encoding encode decode/; my $euc = find_encoding('euc-jp'); my $utf = find_encoding('utf-8'); open my $fh, "<", "euc.txt"; my @

    encode/decode より find_encoding のが速いのは知ってたけどここまでか - だるろぐ
  • Encode::decode_utf8()であってもis_utf8()を使うべき理由 - このブログはURLが変更になりました

    404 Blog Not Found:#perl - utf8::decode()ではなくEncode::decode_utf8()を使うべき理由 Validationの観点だけではなく、簡潔性の観点からも、Encode::decode_utf8()はおすすめです。すでに UTF-8 flag がついた文字列はそのままコピーするだけなので、条件分岐も不要です。 これは厳密にはこうなる。 Validationの観点だけではなく、簡潔性の観点からも、Encode::decode_utf8()はおすすめです。すでに UTF-8 flag がついた文字列はEncode-2.13以降であればそのままコピーするだけなので、条件分岐も不要です。 Encode-2.12ではそのままコピーしてない。そのままコピーするのは2.13以降での実装。 --- Encode-2.12/Encode.pm 2005-0

    Encode::decode_utf8()であってもis_utf8()を使うべき理由 - このブログはURLが変更になりました
  • perlの波ダッシュの文字コード変換のまとめ - (゚∀゚)o彡 sasata299's blog

    2009年02月22日22:31 Perl perlの波ダッシュの文字コード変換のまとめ perlの文字コード周りはなかなかカオスです。外部エンコードとか、perl内部での文字コードとか、UTF8フラグとか。UTF8フラグ?なにそれ?な人は、こことかここを見てみると良いかも。(・∀・) 基的には外部から入ってきた時点でdecodeして、出力時にencodeしてやれば全て解決するんですが、「〜(波ダッシュ)」と「−(全角マイナス)」だけは特別です。注意が必要なのはこの2パターン。 ① utf8⇔shift_jis ② utf8⇔euc-jp ①については以前、perl utf8→sjisで文字化けという記事で紹介しましたが、encode時に、'sjis'では無くて、'cp932'を指定すればOK。※「〜」とか「−」はsjisには含まれていない文字なのが原因。 今回紹介したいのは②の場合です

    kamipo
    kamipo 2009/02/24
    http://gist.github.com/69107 こうしたほうがよいよ。
  • 1