Functions.FSeek3 方法 | |
设置文件指针到一个新位置,指定三个强类型参数。
命名空间:
XSharp.Core
程序集:
XSharp.Core (在 XSharp.Core.dll 中) 版本:2.22 GA
语法 FUNCTION FSeek3(
ptrHandle AS IntPtr,
liOffset AS LONG,
dwOrigin AS DWORD
) AS LONG
public static int FSeek3(
IntPtr ptrHandle,
int liOffset,
uint dwOrigin
)
查看代码参数
- ptrHandle
- 类型:IntPtr
打开文件的句柄。 - liOffset
- 类型:Int32
从由 dwOrigin 定义的位置移动文件指针的字节数。
可以是正数或负数。
正数将指针向前移动,负数将指针向后移动。
- dwOrigin
- 类型:UInt32
与 FSeek() 中的 nOrigin 相同,但为必需参数。有关详细信息,请参见 FSeek()。
返回值
类型:
Int32
文件指针的新位置,相对于文件开头(位置 0)。(文件指针的原始位置不重要。)
备注 备注
The possible values for the origin are:
Constant | Seeks from |
---|
FS_END | End-of-file |
FS_RELATIVE | Current pointer position |
FS_SET | Beginning-of-file |
备注 提示: |
---|
X# 运行时中的低级文件 IO 函数在后台使用 .Net 文件流。
这意味着 FOpen() 和 FCreate() 返回的文件句柄不是'正常'的文件句柄,而是用于在运行时的流集合中找到底层流对象的唯一标识符。
这也意味着你不能使用 FRead() 和 FWrite() 这样的函数,这些函数不是在 X# 运行时中创建的文件句柄。
如果你想访问底层的 FileStream,你应该调用函数 FGetStream(IntPtr) |
示例
此示例使用第三个参数报告指定文件中文件指针的当前位置信息(与 FTell() 相同):
1FUNCTION FilePos(ptrHandle) AS LONGINT
2 RETURN(FSeek3(ptrHandle, 0, FS_RELATIVE))
参见