On Fri, Aug 31, 2001 at 02:21:56PM -0400, Matt Fuerst wrote:
> I am opening a file witht he following command:
>
> open (LOGFILE, "100.txt");
Where is your "|| die(...)"?
> $oneline = <LOGFILE>;
> while ( $oneline =~ /(-{3,})/ )
> {
> # process one line
> $oneline = <LOGFILE>;
> }
<LOGFILE> will evaluate to undef when the end of the file is reached.
The typical idiom for this is:
while ($onefile = <LOGFILE>) {
last unless $oneline =~ /(-{3,})/;
# process $oneline
}
This will guarantee $onefile is always defined, and will appropriately exit
out of the loop -upon- EOF, rather than try to handle the undef and then
exit.
> Which is not working... I get an error of use of uninitialized value at line
> 28,
It is working. "Use of uninitialized value" is a warning, not a fatal
error. undef doesn't match /-{3,}/. The code is working, perl is just
complaining because your use of undef there may be incorrect.
Michael
--
Administrator www.shoebox.net
Programmer, System Administrator www.gallanttech.com
--
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]