NAME

Spreadsheet::ParseExcel::Stream - Simple interface to Excel data with no memory overhead

SYNOPSIS

my $xls = Spreadsheet::ParseExcel::Stream->new($xls_file);
while ( my $sheet = $xls->sheet() ) {
  while ( my $row = $sheet->row ) {
    my @data = @$row;
  }
}

DESCRIPTION

A simple iterative interface to Spreadsheet::ParseExcel, similar to Spreadsheet::ParseExcel::Simple, but does not parse the entire document to memory. Uses the hints provided in the Spreadsheet::ParseExcel docs to reduce memory usage, and returns the data row by row and sheet by sheet.

METHODS

new

my $xls = Spreadsheet::ParseExcel::Stream->new($xls_file);

Opens the spreadsheet and returns an object to iterate through the data.

sheet

Returns the sheet of the next cell of the spreadsheet.

row

Returns the next row of data from the current spreadsheet. The data is the formatted contents of each cell as returned by the $cell->value() method of Spreadsheet::ParseExcel.

If a true argument is passed in, returns the current row of data without advancing to the next row.

unformatted

Returns the next row of data from the current spreadsheet as returned by the $cell->unformatted() method of Spreadsheet::ParseExcel.

If a true argument is passed in, returns the current row of data without advancing to the next row.

next_row

Returns the next row of cells from the current spreadsheet as Spreadsheet::ParseExcel cell objects.

If a true argument is passed in, returns the current row without advancing to the next row.

name

Returns the name of the next cell of the spreadsheet.

worksheet

Returns the worksheet containing the next cell of data as a Spreadsheet::ParseExcel object.

AUTHOR

Douglas Wilson, <dougw@cpan.org<gt>

COPYRIGHT AND LICENSE

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

SEE ALSO

Spreadsheet::ParseExcel, Spreadsheet::ParseExcel::Simple