http://qs1969.pair.com?node_id=11141231


in reply to Re^3: Extracting selected fields form file record (don't use File::Slurp)
in thread Extracting selected fields form file record

If you must use a module for this, may I suggest Path::Tiny or File::Slurper?

While those modules are nice, I personally find it a bit difficult to keep track of all of the different modules' opinions on how to best slurp files. And considering that slurping a file takes at most two lines of pure Perl code and I remain in full control over layers etc., I no longer see the need to load a module just for that. The following only requires knowing some of the details of layers, such as knowing the effect of ${^OPEN}, using :encoding(UTF-8) instead of :utf8, and that UTF-16 files on Windows require the layers :raw:encoding(UTF-16):crlf (the latter two being documented in PerlIO and "open" Best Practices).

my $all = do { open my $fh, '<', $filename or die "$filename: $!"; local $/; <$fh> }; my @lines = do { open my $fh, '<', $filename or die "$filename: $!"; <$fh> }; chomp @lines;

Replies are listed 'Best First'.
Re^5: Extracting selected fields form file record
by choroba (Cardinal) on Feb 08, 2022 at 13:07 UTC