Truxton file seek

From truxwiki.com
Jump to navigation Jump to search

This allows you to alter the offset into the opened file where the next read will take place.

Syntax

int64_t truxton_file_seek( uint64_t file_handle, int64_t distance, int whence );

Parameters

file_handle

The handle created by the truxton_file_open_id or truxton_file_open_md5 call.

distance

The number of bytes to move from whence

whence

Where to seek from.

  • SEEK_SET - 0 - the beginning of the file
  • SEEK_CUR - 1 - the current read offset
  • SEEK_END - 2 - the end of the file

These values mimic standard C library's lseek() whence values.

Return value

The offset into the file where the next byte will be read from.

Sample

int does_file_have_deep_philosophical_meaning( uint64_t truxton )
{
   uint64_t file = truxton_file_open_id( truxton, "5ed3aeb7-3da4-5f5c-8c8f-af5200000000" );

   if ( file != 0 )
   {
      return( 0 );
   }

   truxton_file_seek( file, 42, SEEK_SET );

   int64_t read_position = truxton_file_tell( file );

   truxton_file_close( file );
   truxton_file_free( file );

   if ( read_position == 42 )
   {
      return( 1 );
   }

   return( 0 )
}