FileSystem.Seek Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение типа Long
, указывающее текущую позицию ввода-вывода в файле, открытом функцией FileOpen
, или устанавливает позицию для следующей операции ввода-вывода в файле, открытом с помощью функции FileOpen
. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с Seek
. Для получения дополнительной информации см. FileSystem.
Перегрузки
Seek(Int32) |
Возвращает значение типа |
Seek(Int32, Int64) |
Возвращает значение типа |
Seek(Int32)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Возвращает значение типа Long
, указывающее текущую позицию ввода-вывода в файле, открытом функцией FileOpen
, или устанавливает позицию для следующей операции ввода-вывода в файле, открытом с помощью функции FileOpen
. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с Seek
. Для получения дополнительной информации см. FileSystem.
public:
static long Seek(int FileNumber);
public static long Seek (int FileNumber);
static member Seek : int -> int64
Public Function Seek (FileNumber As Integer) As Long
Параметры
- FileNumber
- Int32
Обязательный. Значение Integer
, содержащее допустимый номер файла.
Возвращаемое значение
Значение типа Long
, указывающее текущую позицию ввода-вывода в файле, открытом функцией FileOpen
, или устанавливает позицию для следующей операции ввода-вывода в файле, открытом с помощью функции FileOpen
.
Исключения
Недопустимый режим файла.
Примеры
В этом примере функция используется для Seek
возврата текущей позиции файла. В примере предполагается TestFile
, что это файл, содержащий записи структуры Record
.
Structure Record ' Define user-defined type.
Dim ID As Integer
Dim Name As String
End Structure
Для файлов, открытых в Random
режиме , Seek
возвращает количество следующей записи.
FileOpen(1, "TESTFILE", OpenMode.Random)
Do While Not EOF(1)
WriteLine(1, Seek(1)) ' Write record number.
FileGet(1, MyRecord, -1) ' Read next record.
Loop
FileClose(1)
Для файлов, открытых в режимах, отличных от Random
режима , возвращает позицию байтов, Seek
в которой выполняется следующая операция. Предположим TestFile
, что это файл, содержащий несколько строк текста.
' Report character position at beginning of each line.
Dim TextLine As String
FileOpen(1, "TESTFILE", OpenMode.Input) ' Open file for reading.
While Not EOF(1)
' Read next line.
TextLine = LineInput(1)
' Position of next line.
MsgBox(Seek(1))
End While
FileClose(1)
В этом примере функция используется Seek
для задания позиции для следующего чтения или записи в файле.
Для файлов, открытых в режимах, отличных от Random
режима , Seek
задает позицию байтов, с которой выполняется следующая операция. Предположим TestFile
, что это файл, содержащий несколько строк текста.
Dim someText As String = "This is a test string."
' Open file for output.
FileOpen(1, "TESTFILE", OpenMode.Input)
' Move to the third character.
Seek(1, 3)
Input(1, someText)
Console.WriteLine(someText)
FileClose(1)
Комментарии
Seek
возвращает значение от 1 до 2 147 483 647 (эквивалентно 2^31 –1), включительно.
Ниже описаны возвращаемые значения для каждого режима доступа к файлам.
Режим | Возвращаемое значение |
---|---|
Random |
Номер следующей записи, прочитаной или записанной |
Binary , Input , Output , Append |
Позиция байта, в которой выполняется следующая операция. Первый байт в файле находится в позиции 1, второй байт — в позиции 2 и т. д. |
См. также раздел
- FileGet
- Loc(Int32)
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- IOException
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic
Применяется к
Seek(Int32, Int64)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
Возвращает значение типа Long
, указывающее текущую позицию ввода-вывода в файле, открытом функцией FileOpen
, или устанавливает позицию для следующей операции ввода-вывода в файле, открытом с помощью функции FileOpen
. Функция My
обеспечивает более высокие показатели производительности и быстродействия в операциях файлового ввода-вывода в сравнении с Seek
. Для получения дополнительной информации см. FileSystem.
public:
static void Seek(int FileNumber, long Position);
public static void Seek (int FileNumber, long Position);
static member Seek : int * int64 -> unit
Public Sub Seek (FileNumber As Integer, Position As Long)
Параметры
- FileNumber
- Int32
Обязательный. Значение Integer
, содержащее допустимый номер файла.
- Position
- Int64
Обязательный. Число в диапазоне от 1 до 2 147 483 647 включительно, определяющее место следующей операции чтения/записи.
Исключения
Недопустимый режим файла.
Примеры
В этом примере функция используется для Seek
возврата текущей позиции файла. В примере предполагается TestFile
, что это файл, содержащий записи структуры Record
.
Structure Record ' Define user-defined type.
Dim ID As Integer
Dim Name As String
End Structure
Для файлов, открытых в Random
режиме , Seek
возвращает количество следующей записи.
FileOpen(1, "TESTFILE", OpenMode.Random)
Do While Not EOF(1)
WriteLine(1, Seek(1)) ' Write record number.
FileGet(1, MyRecord, -1) ' Read next record.
Loop
FileClose(1)
Для файлов, открытых в режимах, отличных от Random
режима , возвращает позицию байтов, Seek
в которой выполняется следующая операция. Предположим TestFile
, что это файл, содержащий несколько строк текста.
' Report character position at beginning of each line.
Dim TextLine As String
FileOpen(1, "TESTFILE", OpenMode.Input) ' Open file for reading.
While Not EOF(1)
' Read next line.
TextLine = LineInput(1)
' Position of next line.
MsgBox(Seek(1))
End While
FileClose(1)
В этом примере функция используется Seek
для задания позиции для следующего чтения или записи в файле.
Для файлов, открытых в режимах, отличных от Random
режима , Seek
задает позицию байтов, с которой выполняется следующая операция. Предположим TestFile
, что это файл, содержащий несколько строк текста.
Dim someText As String = "This is a test string."
' Open file for output.
FileOpen(1, "TESTFILE", OpenMode.Input)
' Move to the third character.
Seek(1, 3)
Input(1, someText)
Console.WriteLine(someText)
FileClose(1)
Комментарии
Seek
возвращает значение от 1 до 2 147 483 647 (эквивалентно 2^31 –1), включительно.
Ниже описаны возвращаемые значения для каждого режима доступа к файлам.
Режим | Возвращаемое значение |
---|---|
Random |
Номер следующей записи, прочитаной или записанной |
Binary , Input , Output , Append |
Позиция байта, в которой выполняется следующая операция. Первый байт в файле находится в позиции 1, второй байт — в позиции 2 и т. д. |
См. также раздел
- FileGet
- Loc(Int32)
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- IOException
- Чтение из файлов в Visual Basic
- Запись в файлы в Visual Basic