Your preferred option may not be the best. If it's a small channel, reading directly from the nickliust would be faster than reading from a txt file (we're not talkjing about reading it once here, remember...). If it's a big channel, hashtables might even be preferable as txt files would be too slow. Additional problem then is that in the loop you will need to add the nicks to a variable, and when that is filled, send the variable. But in big channels the variable length will be too limited to hold all the nicks. Why don't you simply dio a /names on the channel and catch the reply from that - that already has all the nicks on a line, and if the line gets too big it auto-crops to multiple lines to prevent problems like what I just described.
Also if it's a bigger channel, there will be a lot of parts/joins/quits/kicks, using a text file would put too big a stress on your system. In either case you'll need to build in some kind of check to make sure you don't flood yourself off...
I don't see why you'd wanna do that tho, the user who joined can see all the nicks in the nicklist, which is way easier to read than a long line with nicks.