点击或拖拽改变大小

Functions.FSeek 方法

X#
将文件指针设置到新位置。

命名空间:  XSharp.RT
程序集:  XSharp.RT (在 XSharp.RT.dll 中) 版本:2.22 GA
语法
 FUNCTION FSeek(
	ptrHandle,
	nOffset,
	kOrigin
) AS LONG CLIPPER
查看代码

参数

ptrHandle (Optional)
类型:__Usual
打开文件的句柄。
nOffset (Optional)
类型:__Usual
nOrigin 指定的位置移动文件指针的字节数。
可以是正数或负数。
正数将指针向前移动,负数则向后移动。
如果 nOrigin 为文件末尾,则 nOffset 必须为 0 或负数。
kOrigin (Optional)
类型:__Usual
指示文件指针起始位置的常量之一,告诉文件开始搜索的位置:
常量从哪里开始寻址
FS_END文件末尾
FS_RELATIVE当前位置
FS_SET文件开头

返回值

类型:Int32
文件指针的新位置,相对于文件开头(位置 0)。(文件指针的原始位置不重要。)
备注
FSeek() 是一个低级文件函数,用于在打开的文件中向前或向后移动文件指针,而不实际读取指定文件的内容。
文件指针不能移动超过文件的开头或末尾边界。
备注
提示 提示:
这个函数是为了兼容性而包含的。我们不建议使用静态内存进行文件 I/O 操作。 我们建议您使用接受字节数组参数的函数重载。
示例
这个示例使用 FSeek() 从文件末尾确定文件的长度。
然后,将文件指针重置到文件开头:
X#
 1// 以只读方式打开文件
 2IF (ptrHandle := FOpen2("temp.txt", FO_READ)) != F_ERROR
 3    // 获取文件长度
 4    nLength := FSeek(ptrHandle, 0, FS_END)
 5    // 将文件位置重置到文件开头
 6    FSeek(ptrHandle, 0)
 7    FClose(ptrHandle)
 8ELSE
 9    ? DOSErrString(FError())
10ENDIF
这个示例将文件指针定位到文件中的最后一个字节:
X#
1FUNCTION FileBottom(ptrHandle) AS LONGINT
2    RETURN (FSeek(ptrHandle, 0, FS_END))
这个示例将文件指针定位到文件中的第一个字节(与 Rewind() 函数相同):
X#
1FUNCTION FileTop(ptrHandle) AS LONGINT
2    RETURN (FSeek(ptrHandle, 0))
参见