The "Global symbol "@val" requires explicit package name at test.pl ."
should be fixed by declaring @val with 'my':

my @val = **something**;

On Tue, Nov 9, 2010 at 2:37 PM, Shlomi Fish <shlo...@iglu.org.il> wrote:

> Hi Lynx,
>
> I'm CCing my reply to the list. Next time, please use the GMail "reply to
> all"
> feature.
>
> On Tuesday 09 November 2010 15:59:25 Lynx RO wrote:
> > Hello Shlomu Fish
> >
>
> It's "Shlomi" - not "Shlomu".
>
> > thanks for your comment I did changes , about chomp I think that is first
> > step is taking by default, about the rest I change @F and $f with @val
> and
> > $val[] but I still have error about some package
> > my @val = split (/;/, $line);
> > and
> > Global symbol "@val" requires explicit package name at test.pl . Can you
> > explain me were I am doing some mistake I find in the link about @ here
> > http://perldoc.perl.org/perlvar.ht...@- but I can not see were is my
> > mistake in the script :( can you help me?
> >
>
> You have not applied all of my commentary. Here are some notes:
>
> >
> > [code]
> > use strict;
> > use warnings;
> >
> >
> > # GET a value for accout.txt and outaccount
> > my $OUTPUTFILE ="acounts.txt";
> > my $ACC_FILE = "inaccount.txt";
>
> Be consistent - use «my $OUTPUT_FILE» instead of «my $OUTPUTFILE»
>
> >
> > #open input file
> > open my $ACC_IN ,"<", $ACC_FILE
> >     or die "Cannot open '$ACC_FILE' for reading - $!;
> >
> > #split by line
> >   while (my $line = <ACC_IN>)
> >
> >  {
> >   chomp ($line);
> >
> >  my @val = split (/;/, $line);
> >
> >
> > #open output file
> >         open my $out_fh, ">" , $OUTPUTFILE
> >             or die "Cannot open '$OUTPUTFILE' for reading - $!;
> >
>
> 1. Here you are opening the file for writing and over-writing it in the
> process for each line in the loop. The opening should be done before the
> loop
> and the closing afterwards to prevent the file from being over-written each
> time.
>
> 2. You're missing the ending double-quotes («"»).
>
> > #print value what is interested for me in the file and then go to the
> next
> > line
>
> I gave you a fixed comment as it is not phrased well.
> >
> >         print {$out_fh} "$val[0]$val[1]$val[2]$val[0]_mytext$val[3]\n";
> >
> >
> > #close outfile
> > close $out_fh;
>
> Move this close out of the loop.
> > }
> > [/code]
> >
>
> Regards,
>
>        Shlomi Fish
>
> --
> -----------------------------------------------------------------
> Shlomi Fish       http://www.shlomifish.org/
> What Makes Software Apps High Quality -  http://shlom.in/sw-quality
>
> <rindolf> She's a hot chick. But she smokes.
> <go|dfish> She can smoke as long as she's smokin'.
>
> Please reply to list if it's a mailing list post - http://shlom.in/reply .
>
> --
> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
> For additional commands, e-mail: beginners-h...@perl.org
> http://learn.perl.org/
>
>
>

Reply via email to