タグ

programmingとutf8に関するa2ikmのブックマーク (2)

  • Wide character in print at ...

    [Perl] Wide character in print atというエラーはUTF-8フラグが付いた文字列をprintしようとしているからである。なのでUTF-8フラグを取り外してからprintすればエラーがでなくなります。UTF-8フラグが付いているかどうかはutf8::is_utf8を使用すればよい。 #UTF8フラグが付いているかの確認 utf8::is_utf8では実際の文字列がUTF-8かどうかではなく、あくまでフラグがついているかどうかを確認します。そのため、UTF-8の文字列もフラグが付いていなければ上記の出力はno flagとなります。またutf8::is_utf8はuseしなくても使用できる。useすると全然違う意味あいになるので注意。 UTF-8フラグが付いていたら、encodeを使用してフラグをはずします。以下の例では$stringをutf-8に変換して出力します

    a2ikm
    a2ikm 2011/05/16
    Wide character in print atが出るのは出力しようとしている文字列にutf8フラグが付けられているから。これを削除するにはUnicode::Japaneseならgetメソッドで文字列を取り出せば良い
  • Unicode対応 文字コード表

    �$B!!�(BUnicode�$BBP1~$N�(B JIS X 0201 �$B$N�(BJIS�$B%m!<%^;z$H�(BJIS�$B%+%J$NJ8;z%3!<%II=$G$9!#�(B �$B!!�(B�$BJ8;z%3!<%I$K$D$$$F�(B�$B$N%Z!<%8$d!"�(B�$BJ8;z%3!<%I0lMw$K$D$$$F�(B�$B$N@bL@$b$"$j$^$9!#�(B JIS�$B%m!<%^;z!'�(BASCII�$B!&J8;z%3!<%II=�(B JIS SJIS EUC UTF-8 UTF-16 �$B;z�(B 20 20 20 20 0020 21 21 21 21 0021 ! 22 22 22 22 0022 " 23 23 23 23 0023 # 24 24 24 24 0024 $ 25 25 25 25 0025 % 26 26

  • 1