octave: File Positioning

 
 14.2.19 File Positioning
 ------------------------
 
 Three functions are available for setting and determining the position
 of the file pointer for a given file.
 
  -- : POS = ftell (FID)
      Return the position of the file pointer as the number of characters
      from the beginning of the file specified by file descriptor FID.
 
DONTPRINTYET       See also: Seefseek XREFfseek, Seefrewind XREFfrewind, *noteDONTPRINTYET       See also: Seefseek XREFfseek, Seefrewind XREFfrewind, See
      feof XREFfeof, Seefopen XREFfopen.
 
  -- : fseek (FID, OFFSET)
  -- : fseek (FID, OFFSET, ORIGIN)
  -- : STATUS = fseek (...)
      Set the file pointer to the location OFFSET within the file FID.
 
      The pointer is positioned OFFSET characters from the ORIGIN, which
      may be one of the predefined variables ‘SEEK_CUR’ (current
      position), ‘SEEK_SET’ (beginning), or ‘SEEK_END’ (end of file) or
      strings "cof", "bof" or "eof".  If ORIGIN is omitted, ‘SEEK_SET’ is
      assumed.  OFFSET may be positive, negative, or zero but not all
      combinations of ORIGIN and OFFSET can be realized.
 
      ‘fseek’ returns 0 on success and -1 on error.
 
      See also: Seefskipl XREFfskipl, Seefrewind XREFfrewind,
      Seeftell XREFftell, Seefopen XREFfopen.
 
  -- : SEEK_SET ()
  -- : SEEK_CUR ()
  -- : SEEK_END ()
      Return the numerical value to pass to ‘fseek’ to perform one of the
      following actions:
 
      ‘SEEK_SET’
           Position file relative to the beginning.
 
      ‘SEEK_CUR’
           Position file relative to the current position.
 
      ‘SEEK_END’
           Position file relative to the end.
 
      See also: Seefseek XREFfseek.
 
  -- : frewind (FID)
  -- : STATUS = frewind (FID)
      Move the file pointer to the beginning of the file specified by
      file descriptor FID.
 
      ‘frewind’ returns 0 for success, and -1 if an error is encountered.
      It is equivalent to ‘fseek (FID, 0, SEEK_SET)’.
 
DONTPRINTYET       See also: Seefseek XREFfseek, Seeftell XREFftell, *noteDONTPRINTYET       See also: Seefseek XREFfseek, Seeftell XREFftell, See
      fopen XREFfopen.
 
    The following example stores the current file position in the
 variable ‘marker’, moves the pointer to the beginning of the file, reads
 four characters, and then returns to the original position.
 
      marker = ftell (myfile);
      frewind (myfile);
      fourch = fgets (myfile, 4);
      fseek (myfile, marker, SEEK_SET);