in reply to Re: Making an array out of each line of a text file
in thread Making an array out of each line of a text file

This is what I came up with (this is the whole script) and i really dont know what to do to make it to work. I've been trying to mess around with stuff but it's not working.. :(

I'm looking at other wayts to write it but none of them seem as effecient (with as less lines of code) as yours. Could you quickly look through it and see if any errors/screw ups pop out at you? Your help is greatly appreciated (..and I thought Perl was going be easy as cake :)

#!/usr/local/bin/perl $DATA='data.txt'; open (DATA,"<$DATA") || die "Can't open $DATA $!"; @line = <DATA>; foreach (@line) { chop; ($key, $one, $two, $three, $four, $five, $six) = (split(/,/)); $key = "" if !defined($key); #this should make it null if nothing +'s there $one = "" if !defined($one); $two = "" if !defined($two); $three = "" if !defined($three); $four = "" if !defined($four); $five = "" if !defined($five); $six = "" if !defined($six); } while (<DATA>) { chomp; @line = (split(/,/)); # was getting errors on split /,\s*/; $key = shift @line; push @{$data{$key}}, \@line; } print $data{"Andrea"}[0][1], " should be good\n"; # offsets off by one + + print $data{"Dave"}[0][1], " should be better\n"; print $data{"Joe"}[0][1], " should be 0\n"; close(DATA);

Replies are listed 'Best First'.
RE: RE: Re: Making an array out of each line of a text file
by merlyn (Sage) on Aug 25, 2000 at 21:39 UTC
      I tried to run your code but it's now working. I have a file in the same directory called data.txt (the file w/all of the info in it).. here's the script file i'm runninng
      #!/usr/local/bin/perl open (DATA,"<data.txt") || die "Can't open $DATA $!"; while (<DATA>) { chomp; @line = split(/,/); $key = shift @line; push @{$data{$key}}, \@line; } print $data{"Andrea"}[0][1], " should be good\n"; # offsets off by one + print $data{"Dave"}[0][1], " should be better\n"; print $data{"Joe"}[0][1], " should be 0\n";
      Here are the errors

      syntax error in file data.pl at line 10, next 2 tokens "@$data" Spurious backslash ignored at data.pl line 10. syntax error in file data_824.pl at line 14, next 2 tokens "}[" syntax error in file data.pl at line 15, next 2 tokens "}[" Execution of data.pl aborted due to compilation errors.
      sorry if i was confusing.

        You are running perl 4. You really need to upgrade.

                - tye (but my friends call me "Tye")