タグ

UTF-8に関するmachatakaのブックマーク (5)

  • Perl の多言語処理 -- Perl ヒント集 (ja)

    エンコードの処理の基 Perl 5.8 以降,テキストの処理が UTF-8 (Unicode の変換形式のひとつ) を軸におこなわれるようになりました。Shift JIS や EUC-JP での処理が一般的な日語を Perl で扱う場合,エンコードを意識したプログラミングをおこなうことが必要になります。具体的には,Perl でエンコードを意識する必要のあるのは以下の箇所です。 スクリプト自体のエンコード ファイルの入出力 標準入出力 標準エラー出力 データベース,CGIなどプロセス間のインターフェース Perl 5.8 では内部処理が UTF-8 で行われますが,特にエンコードの指定がされない場合,テキストは文字単位ではなく,バイト単位で処理されます。バイト単位で Shift JIS などのテキストを処理することもある程度可能ですが,2バイトの文字が文字として認識されていませんから,正

  • Perl5.8でdecodeが失敗する。 - memo_ruby

    Perl5.8でdecodeが失敗する。 find_encoding('utf8')->decode($data); とすると、こんなメッセージ出す。 Cannot decode string with wide characters. 入力データ($data)はUTF8の文字列。 guess_encoding($data, qw/shiftjis utf8 ascii/)->name #=> utf8 解決方法はhttp://lab.z-nix.jp/mt/archives/2005/10/ にあった。アリガト!(´▽`)。 で、結局ソリューションは??と聞きたくなるのですが、ようは UTF-8 のフラグが立ちまくっているので、 その状態ではEncodeできませんよということだ。つまり UTF-8 のフラグを降ろせば先程のエラーは出なくなるはず。UTF-8 フラグについては延々と書かれ

    Perl5.8でdecodeが失敗する。 - memo_ruby
  • 今日のCPANモジュール(跡地) 目次

    Redirecting… Click here if you are not redirected.

  • Wide character in print at ... - iRSSの日記

    この「Wide character in print at ...」には、何度も、悩まされては、 理解するのだが、のど下過ぎると、わすれちゃう。 再復習。 printするときに、utfフラグがついているのがいかんです。 Wide character in print at ..のメッセージがでる原因は,print対象の文字列にutf8フラグがついているということ #!/usr/bin/perl -w use strict; use warnings; use utf8; my $str = 'あああ'; print $str; ↑これを実行すると Wide character in print at ... line 6. なんてメッセージがでます。 対策としては #!/usr/bin/perl -w use strict; use warnings; use utf8; my $str

    Wide character in print at ... - iRSSの日記
    machataka
    machataka 2011/05/04
    wide character
  • ヘチマ_BLOG : Ethna をインストール & UTF-8 化

    Ethna(ethna.jp, beta.ethna.jp)を試してみることにする。PHP5にPEARでインストール。 $ pear channel-discover pear.ethna.jp $ pear install ethna/ethna-beta ファイルの文字コードがEUC-JPなので全部UTF-8にする。テンプレートのcharsetも置き換える。 <?php $ethna_dir= '/path/to/lib/php/Ethna'; //ここで決め打ち $pattern = $ethna_dir.'/*'; $files=glob($pattern); while(count($files) > 0){ foreach($files as $file) { conv_file($file); } $pattern.='/*'; $files=glob($pattern);

  • 1