Skip to content

Instantly share code, notes, and snippets.

@reuf
Forked from seouri/read_write.pl
Created September 30, 2015 10:11
Show Gist options
  • Save reuf/cf5cee262886852a0bf6 to your computer and use it in GitHub Desktop.
Save reuf/cf5cee262886852a0bf6 to your computer and use it in GitHub Desktop.
read/write perl
sub read_file {
my $file_name = shift;
print STDERR "READ $file_name ... ";
my @file;
open(FH, "< $file_name") or die("Can't read $file_name: $!\n");
while (<FH>) {
chomp;
my @t = split /\t/;
@t = map { s/^\s+//g; s/\s+$//g; $_ } @t;
push @file, \@t;
}
close FH;
print STDERR scalar(@file), " lines\n";
return \@file;
}
sub write_file {
my ($file_name, $file_ref) = @_;
print STDERR "WRITE $file_name ... ";
open(FH, "> $file_name") or die("Can't write $file_name: $!\n");
print FH join("\n", map { join("\t", @$_) } @$file_ref), "\n";
close FH;
print STDERR scalar(@$file_ref), " lines\n";
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment