基 础 函 数 参 考


FileSetPos

设置当前文件的位置.

FileSetPos ( 句柄, 偏移量, 起点 )

参 数

句柄 先前调用 FileOpen() 函数返回的文件句柄.
偏移量 从起点的偏移量. 可以是正数或负数. 负值向后移动.
起点 必须是下列值之一:
 0 - 文件开始点 ($FILE_BEGIN 由 Constants.au3 文件定义).
 1 - 当前位置 ($FILE_CURRENT 由 Constants.au3 文件定义).
 2 - 文件结尾 ($FILE_END 由 Constants.au3 文件定义).

返 回 值

成功: 返回 True, 操作成功.
失败: 返回 False.

备 注

包含 Constants.au3 文件到脚本, 使用"起点"参数括号内的常量名指定操作的起点.
可以对同一文件执行读与写操作. 读,写同一个文件时, 读,写之间必须调用 FileFlush().
移动指针到数据的中间可用于修改数据.

相 关 函 数

FileGetPos, FileFlush, FileRead, FileReadLine, FileWrite, FileWriteLine, FileOpen

函 数 示 例


#include <Constants.au3>

Local Const $sFile = "test.txt"
Local $hFile = FileOpen($sFile, 2)

; 检查文件是否以写入模式打开
If $hFile = -1 Then
    MsgBox(0, "错误", "无法打开文件.")
    Exit
EndIf

; 写些文本到文件.
FileWriteLine($hFile, "Line1")
FileWriteLine($hFile, "Line2")
FileWriteLine($hFile, "Line3")

; 刷新文件到磁盘.
FileFlush($hFile)

; 检查文件中位置, 并尝试读取当前位置的内容.
MsgBox(0, "", "位置: " & FileGetPos($hFile) & @CRLF & "数据: " & @CRLF & FileRead($hFile))

; 现在调整位置.
Local $n = FileSetPos($hFile, 0, $FILE_BEGIN)

; 检查文件中位置, 并尝试读取当前位置的内容.
MsgBox(0, "", "位置: " & FileGetPos($hFile) & @CRLF & "数据: " & @CRLF & FileRead($hFile))

; 关闭句柄.
FileClose($hFile)

; 删除临时文件.
FileDelete($sFile)

provider with jb51.net (unicode)