1. ホーム
  2. perl

[解決済み] データファイルを配列に読み込む正しい方法

2022-03-06 21:28:09

質問

私はデータファイルを持っており、各行には1つの数字があり、次のようになります。

10
20
30
40

このファイルを読み込んで、データを配列に格納するにはどうすればよいのでしょうか?

この配列に対して何らかの操作を行うことができるようにするためです。

どのように解決するのですか?

ファイルを配列に読み込んで、1要素につき1行ずつ読み込むだけなら簡単です。

open my $handle, '<', $path_to_file;
chomp(my @lines = <$handle>);
close $handle;

これで、ファイルの行は、配列 @lines .

に対するエラーハンドリングを確認したい場合。 openclose というようなことをします(下のスニップでは UTF-8モードでファイルを開く ということです。)

my $handle;
unless (open $handle, "<:encoding(utf8)", $path_to_file) {
   print STDERR "Could not open file '$path_to_file': $!\n";
   # we return 'undefined', we could also 'die' or 'croak'
   return undef
}
chomp(my @lines = <$handle>);
unless (close $handle) {
   # what does it mean if close yields an error and you are just reading?
   print STDERR "Don't care error while closing '$path_to_file': $!\n";
}