Perl(パール)は、動的型付けのプログラミング言語です。
UTF-8対応
use strict;
use warnings;
use utf8;
binmode STDOUT, ':utf8';
my $hoge = "あいうえお";
print $hoge, "\n";
# length...5
print "length...", length($hoge), "\n";
use utf8
すると、ソースコードをUTF-8で書くことができるuse utf8
しないと、Latin-1扱いになる- UTF-8フラグONの文字列は、length関数がバイト数ではなくコードポイント数を返す
ファイル入力
use strict;
use warnings;
use utf8;
binmode STDOUT, ':utf8';
my $file = "hoge.txt";
open my $fh, "<:utf8", $file
or die "Cannot open $file";
while (my $line = readline $fh) {
chomp $line;
print $line, "\n";
}
close $fh;
ファイル出力
use strict;
use warnings;
use utf8;
my $file = "hoge.txt";
# 新規作成
open my $fh, ">:utf8", $file
or die "Cannot open $file";
print $fh "あいうえお\n";
close $fh;
# 追記
open my $fh2, ">>:utf8", $file
or die "Cannot open $file";
print $fh2 "\x{304B}きくけこ\n";
close $fh2;