IO::Lines(3) IO:: interface for reading/writing an array of lines


use IO::Lines;
### See IO::ScalarArray for details


This class implements objects which behave just like FileHandle (or IO::Handle) objects, except that you may use them to write to (or read from) an array of lines. They can be tiehandle'd as well.

This is a subclass of IO::ScalarArray in which the underlying array has its data stored in a line-oriented-format: that is, every element ends in a "\n", with the possible exception of the final element. This makes "getline()" much more efficient; if you plan to do line-oriented reading/printing, you want this class.

The "print()" method will enforce this rule, so you can print arbitrary data to the line-array: it will break the data at newlines appropriately.

See IO::ScalarArray for full usage and warnings.


$Id:,v 1.3 2005/02/10 21:21:53 dfs Exp $


Primary Maintainer

David F. Skoll ([email protected]).

Principal author

Eryq ([email protected]). President, ZeeGee Software Inc (

Other contributors

Thanks to the following individuals for their invaluable contributions (if I've forgotten or misspelled your name, please email me!):

Morris M. Siegel, for his $/ patch and the new "getlines()".

Doug Wilson, for the IO::Handle inheritance and automatic tie-ing.