UTF8フラグの操作(Encodeモジュール)

UTF8フラグ無し → UTF8フラグ付き

 $utf8_flag_text = Encode::decode('FROM_ENCODE',$no_utf8_flag_text)

UTF8フラグ付き →(文字コード変換)→ UTF8フラグ無し

 $no_utf8_flag_text = Encode::encode('TO_ENCODE',$utf8_flag_text) # $no_utf8_flag_txtの文字コードはTO_ENCODE

UTF8フラグ無し →(文字コード変換)→ UTF8フラグ無し

 Encode::from_to($no_utf8_flag_text,'FROM_ENCODE','TO_ENCODE')    # $no_utf8_flag_textは破壊的に変換される

どの文字コードか調べる

 $enc = Encode::Guess::guess_encoding($text,qw/euc-jp sjis/);     # $textはUTFフラグ付きでも無しでもよい
                                                                  # utf-8はデフォルトなので指定は不要
 print $enc->name,"\n";                                           # "euc-jp"などと表示される

UTF8フラグ付き →(文字コード変換)→ UTF8フラグ付き

 $text = Jcode->new($text,'utf-8')->euc;

Jcodeを使う。この場合、UTF8からEUC-JPへの変換。$textはUTFフラグ付きでも無しでもよい。

参考(perldoc)


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS