This function returns the current absolute position inside of the file/stream object. It should be the number of bytes that the current stream pointer is set from the beginning of the object. Not all stream classes have to support this operation.
int file.size ()
Returns the amount of bytes that this file/stream object has already traversed. If the operation is not supported by the underlying stream class, it returns false.
This snippet seeks back to the beginning of the file by going back the current stream pointer byte offset.
local function alternativeFileReset( theFile ) -- Get the current stream position. local streamOffset = theFile.tell(); -- Check whether this operation is supported. if not ( streamOffset ) then return false, "not supported"; end -- Reset the file to its beginning. theFile.seek( -streamOffset, "cur" ); return true; end