Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re: Splitting a text file

by jethro (Monsignor)
on Mar 19, 2013 at 10:41 UTC ( #1024252=note: print w/replies, xml ) Need Help??

in reply to Splitting a text file

If you are only interested in a solution (and are on something unixoide) you could simply use "split", a command line utility

If you are interested in learning perl, I'll give you a few hints instead of the solution on a platter:

Your inner loop makes no sense. An inner loop is run completely for every invocation of the outer loop. So since your outer loop is going through the lines of your input file, you seem to open a new file for each line of your input file. Not good.

What you need is a counter (similar to $fileNR, but for input lines). This counter counts to 1000. If it reaches 1000 you open a new file and reset the counter to 0. That's it

Further optimization: If you want you can use $x as the counter. You just don't reset it and use modulo arithmetic instead, i.e. if $x modulo 1000 is 0, then open a new file. The modulo operator in perl is "%"

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1024252]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (3)
As of 2018-05-25 22:56 GMT
Find Nodes?
    Voting Booth?