Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
File::RandomAccess(3) User Contributed Perl DocumentationFile::RandomAccess(3)

NAME
       File::RandomAccess - Random access reads	of sequential file or scalar

SYNOPSIS
	   use File::RandomAccess;

	   $raf	= new File::RandomAccess(\*FILE, $disableSeekTest);

	   $raf	= new File::RandomAccess(\$data);

	   $err	= $raf->Seek($pos);
	   $num	= $raf->Read($buff, $bytes);

DESCRIPTION
       Allows random access to sequential file by buffering the	file if
       necessary.  Also	allows access to data in memory	to be accessed as if
       it were a file.

METHODS
       new Creates a new RandomAccess object given a file reference or
	   reference to	data in	memory.

	       # Read from open	file or	pipe
	       $raf = new File::RandomAccess(\*FILE);

	       # Read from data	in memory
	       $raf = new File::RandomAccess(\$data);

	   Inputs:
	       0) Reference to RandomAccess object or RandomAccess class name.

	       1) File reference or scalar reference.

	       2) Flag set if file is already random access (disables
	       automatic SeekTest).

	   Returns:
	       Reference to RandomAccess object.

       SeekTest
	   Performs test seek()	on file	to determine if	buffering is
	   necessary.  If the seek() fails, then the file is buffered to allow
	   random access.  SeekTest() is automatically called from new unless
	   specified.

	       $result = $raf->SeekTest();

	   Inputs:
	       0) Reference to RandomAccess object.

	   Returns:
	       1 if seek test passed (ie. no buffering required).

	   Notes:
	       Must be called before any other i/o.

       Tell
	   Get current position	in file

	       $pos = $raf->Tell();

	   Inputs:
	       0) Reference to RandomAccess object.

	   Returns:
	       Current position	in file

       Seek
	   Seek	to specified position in file.	When buffered, this doesn't
	   quite behave	like seek() since it returns success even if you seek
	   outside the limits of the file.

	       $success	= $raf->Seek($pos, 0);

	   Inputs:
	       0) Reference to RandomAccess object.

	       1) Position.

	       2) Whence (0=from start,	1=from cur pos,	2=from end).

	   Returns:
	       1 on success, 0 otherwise

       Read
	   Read	data from the file.

	       $num = $raf->Read($buff,	1024);

	   Inputs:
	       0) Reference to RandomAccess object.

	       1) Buffer.

	       2) Number of bytes to read.

	   Returns:
	       Number of bytes actually	read.

       ReadLine
	   Read	a line from file (end of line is $/).

	   Inputs:
	       0) Reference to RandomAccess object.

	       1) Buffer.

	   Returns:
	       Number of bytes read.

       Slurp
	   Read	whole file into	buffer,	without	changing read pointer.

	   Inputs:
	       0) Reference to RandomAccess object.

	   Returns:
	       Nothing.

       BinMode
	   Set binary mode for file.

	   Inputs:
	       0) Reference to RandomAccess object.

	   Returns:
	       Nothing.

       Close
	   Close the file and free the buffer.

	   Inputs:
	       0) Reference to RandomAccess object.

	   Returns:
	       Nothing.

AUTHOR
       Copyright 2003-2017 Phil	Harvey (phil at	owl.phy.queensu.ca)

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

SEE ALSO
       Image::ExifTool(3pm)

perl v5.32.0			  2017-01-03		 File::RandomAccess(3)

NAME | SYNOPSIS | DESCRIPTION | METHODS | AUTHOR | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=File::RandomAccess&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help