http://qs321.pair.com?node_id=76761


in reply to how do I open each line of a text file into seperate arrays?

Here's a complete program. Basically the same as bbfu with a couple of enhancements. Adding a -1 to the split allows for null values to still be added, such as:
foo|bar||||shazam
and chomping the line removes the newline, otherwise it will end up in the last element of each array.

my $myfile = "BigOldFile.psv"; ## pipe-separated values :) open(MYFILE, $myfile) or die "Could not open $myfile: $!\n"; my @lines = []; while(<MYFILE>) { chomp; push @lines, [split(/\|/, $_, -1)]; } ## This will show you the format: my $line=1; for (@lines) { print "Line $line: $_\n"; for (@$_) { print "*$_*\n"; ## Stars are to demonstrate null values } $line++; }

Replies are listed 'Best First'.
Re: Re: how do I open each line of a text file into seperate arrays?
by lindex (Friar) on May 01, 2001 at 02:39 UTC
    open(my($fd),"./file") or die($!); @a=map{split('|',$_)}<$fd>; close($fd);
    my 2 cents :)


    lindex
    /****************************/ jason@gost.net, wh@ckz.org http://jason.gost.net /*****************************/