FileGetPos
Получает текущую позицию указателя в файле.
FileGetPos ( "filehandle" )
Параметры
filehandle | Дескриптор файла, возвращённый функцией FileOpen(). |
Возвращаемое значение
Успех: | Возвращает смещение на текущую позицию от начала файла (индексация начинается с 0). |
Ошибка: | Возвращает 0 и устанавливает значение @error не равным 0. |
Примечания
В случае неудачи возвращается 0, но 0 это так же допустимое значение позиции, поэтому проверяйте значение @error, чтобы узнать, произошла ли ошибка.См. также
FileSetPos, FileRead, FileReadLine, FileWrite, FileWriteLine, FileOpenПример
#include <Constants.au3>
Local $sFile, $hFile, $iPos
$sFile = @ScriptDir & "test.txt"
$hFile = FileOpen($sFile, 2)
; Проверяет, является ли файл открытым, перед тем как использовать функции чтения/записи в файл
If $hFile = -1 Then
MsgBox(4096, "Ошибка", "Невозможно открыть файл.")
Exit
EndIf
; Записывает некоторый текст в файл. При записи позиция устанавливается в конец записанного текста
FileWrite($hFile, "Строка1" & @CRLF & "Строка2" & @CRLF & "Строка3")
; Устанавливает позицию в конец файла и сдвиг 4 байта/символа влево в сторону начала файла.
FileSetPos($hFile, -4, $FILE_END)
$iPos = FileGetPos($hFile) ; Возвращает позицию указателя в файле
MsgBox(0, "Чтение файла от текущей позиции " & $iPos, FileRead($hFile))
; Устанавливает позицию в начало файла и сдвиг 4 байта/символа.
FileSetPos($hFile, 4, $FILE_BEGIN)
$iPos = FileGetPos($hFile) ; Возвращает позицию файла
MsgBox(0, "Чтение файла от текущей позиции " & $iPos, FileRead($hFile))
; Закрывает дескриптор.
FileClose($hFile)
; Удаляет временный файл.
FileDelete($sFile)