This manual page is for Mac OS X version 10.6

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • For more information about the manual page format, see the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Reference Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.



Archive::Zip::MemberRead(3)          User Contributed Perl Documentation         Archive::Zip::MemberRead(3)



NAME
       Archive::Zip::MemberRead - A wrapper that lets you read Zip archive members as if they were files.

SYNOPSIS
         use Archive::Zip;
         use Archive::Zip::MemberRead;
         $zip = Archive::Zip->new("file.zip");
         $fh  = Archive::Zip::MemberRead->new($zip, "subdir/abc.txt");
         while (defined($line = $fh->getline()))
         {
             print $fh->input_line_number . "#: $line\n";
         }

         $read = $fh->read($buffer, 32*1024);
         print "Read $read bytes as :$buffer:\n";

DESCRIPTION
       The Archive::Zip::MemberRead module lets you read Zip archive member data just like you read data
       from files.

METHODS
       Archive::Zip::Member::readFileHandle()
           You can get a "Archive::Zip::MemberRead" from an archive member by calling "readFileHandle()":

             my $member = $zip->memberNamed('abc/def.c');
             my $fh = $member->readFileHandle();
             while (defined($line = $fh->getline()))
             {
                 # ...
             }
             $fh->close();

       Archive::Zip::MemberRead->new($zip, $fileName)
       Archive::Zip::MemberRead->new($zip, $member)
       Archive::Zip::MemberRead->new($member)
           Construct a new Archive::Zip::MemberRead on the specified member.

             my $fh = Archive::Zip::MemberRead->new($zip, 'fred.c')

       setLineEnd(expr)
           Set the line end character to use. This is set to \n by default except on Windows systems where
           it is set to \r\n. You will only need to set this on systems which are not Windows or Unix based
           and require a line end diffrent from \n.  This is a class method so call as
           "Archive::Zip::MemberRead"->"setLineEnd($nl)"

       rewind()
           Rewinds an "Archive::Zip::MemberRead" so that you can read from it again starting at the
           beginning.

       input_record_separator(expr)
           If the argumnet is given, input_record_separator for this instance is set to it. The current
           setting (which may be the global $/) is always returned.

       input_line_number()
           Returns the current line number, but only if you're using "getline()".  Using "read()" will not
           update the line number.

       close()
           Closes the given file handle.

       buffer_size([ $size ])
           Gets or sets the buffer size used for reads.  Default is the chunk size used by Archive::Zip.

       getline()
           Returns the next line from the currently open member.  Makes sense only for text files.  A read
           error is considered fatal enough to die.  Returns undef on eof. All subsequent calls would return
           undef, unless a rewind() is called.  Note: The line returned has the input_record_separator
           (default: newline) removed.

       read($buffer, $num_bytes_to_read)
           Simulates a normal "read()" system call.  Returns the no. of bytes read. "undef" on error, 0 on
           eof, e.g.:

             $fh = Archive::Zip::MemberRead->new($zip, "sreeji/secrets.bin");
             while (1)
             {
               $read = $fh->read($buffer, 1024);
               die "FATAL ERROR reading my secrets !\n" if (!defined($read));
               last if (!$read);
               # Do processing.
               ....
              }

AUTHOR
       Sreeji K. Das, <[email protected]> See Archive::Zip by Ned Konz without which this module does not
       make any sense!

       Minor mods by Ned Konz.

COPYRIGHT
       Copyright 2002 Sreeji K. Das.

       This program is free software; you can redistribute it and/or modify it under the same terms as Perl
       itself.



perl v5.10.0                                     2008-10-12                      Archive::Zip::MemberRead(3)

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation to the Perl project. (See perlbug(1) for submission instructions.)
Bug reports
Report bugs in the functionality of the described tool or API to Apple through Bug Reporter and to the Perl project using perlbug(1).
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.