in reply to Re^2: READ one line at a time
in thread READ one line at a time

Hello wrkrbeee,

program run, but is voluminous, duplicated entries, expanded the file size from about 3 MB to 26 MB

With the whole file slurped into $data in one go, the line:

print OUTPUT "$cik,$form_type,$report_date,$file_date,$name,$sic,$file +size,$sb\n";

runs once per file. With local $/; commented out, each file is read line-by-line, and the output code is called once for each line. No surprise, then, that the output file increases dramatically in size!

If you’re going to read each file line-by-line (as you should), you’re going to have to change the logic of the code accordingly. Exactly what the new logic should be depends on what the output file is supposed to look like. Note that, at present, each of the variables $cik, $form_type, etc., is initialised once per file, but if the file is read line-by-line, these variables are all reset (without being re-initialised) each time a line is read.

It will help a lot if you can provide a small amount of sample input, together with the corresponding output you wish to obtain.

Hope that helps,

Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,

Replies are listed 'Best First'.
Re^4: READ one line at a time
by wrkrbeee (Scribe) on Dec 27, 2014 at 16:40 UTC
    Thank you! Question: there is a comment in the code about slurping the entire file into $data. I attempted to circumvent this concept by deleting: $data = <SLURP>; so, my question is whether or not the pgm is still reading the entire file. In short, the comment is misleading. :-(
        I apologize, not doubting anything that anyone has said! :-) running now, may take some time to complete. I am grateful for your help! :-)
        Worked! I am forever indebted for your knowledge and expertise. Words cannot express my gratitude. Thank you, sincerely appreciate you!! :-) May 2015 be the best for you.