FileSystem.Seek Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Long Возвращает текущее положение чтения и записи в файле, открываемом с помощью FileOpen функции, или задает позицию для следующей операции чтения и записи в файле, открываемом FileOpen с помощью функции. Эта My функция обеспечивает лучшую производительность и производительность операций ввода-вывода файлов, чем Seek. Дополнительные сведения см. в разделе FileSystem.
Перегрузки
| Имя | Описание |
|---|---|
| Seek(Int32) |
|
| Seek(Int32, Int64) |
|
Seek(Int32)
- Исходный код:
- FileSystem.vb
- Исходный код:
- FileSystem.vb
- Исходный код:
- 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, , InputOutputAppend |
Позиция байтов, в которой происходит следующая операция. Первый байт в файле находится в позиции 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
- Исходный код:
- 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, , InputOutputAppend |
Позиция байтов, в которой происходит следующая операция. Первый байт в файле находится в позиции 1, второй байт — в позиции 2 и т. д. |
См. также раздел
- FileGet
- Loc(Int32)
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- IOException
- Читание из файлов в Visual Basic
- Запись файлов в Visual Basic