VFSeekFile

C Specification


#include <revolution/vf.h>

typedef void	VFFile;
typedef s32	VFErr;

VFErr VFSeekFile( VFFile* file, s32 offset, s32 origin );

Arguments

file A pointer to the file descriptor.
offset The number of bytes from the base point.
origin The base point.
VF_SEEK_CUR Current
VF_SEEK_SET Beginning
VF_SEEK_END End

Return Values

When successful, 0.
When failed, a VFErr other than 0.

Description

Moves the file data's I/O pointer. For the pointer to the file descriptor, use the one retrieved by VFCreateFile(W) or VFOpenFile(W). Although the I/O pointer can be moved to a location beyond the end of the file (and the file size won't change until a Write occurs), an error (VF_ERR_EINVAL) is returned when you attempt to move the pointer ahead of the file's beginning.
Note: When the process results in an error, the file data I/O pointer maintains the state from before fseek. The file data I/O pointer cannot be moved to a region larger than 4 GB. In this case, the file pointer is not changed from fseek's pre-issue position. When a write occurs after moving the file pointer to a region beyond the end of the file, the region between the end of the file and the file I/O pointer after the move maintains its status from before the write.

See Also

VFCreateFile, VFOpenFile, VFReadFile, VFWriteFile, VFCloseFile, VFDeleteFile

Revision History

2006/04/26 Initial version.fc


CONFIDENTIAL