IO::Lines - 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: Lines.pm,v 1.3 2005/02/10 21:21:53 dfs Exp $
David F. Skoll (dfs@roaringpenguin.com).
Eryq (eryq@zeegee.com). President, ZeeGee Software Inc (http://www.zeegee.com).
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.