Udostępnij za pośrednictwem


FileSystem.Seek Metoda

Definicja

Zwraca wartość określającą bieżącą Long pozycję odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji lub ustawia pozycję dla następnej operacji odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji . Ta My funkcja zapewnia lepszą produktywność i wydajność operacji we/wy plików niż Seek. Aby uzyskać więcej informacji, zobacz FileSystem.

Przeciążenia

Seek(Int32)

Zwraca wartość określającą bieżącą Long pozycję odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji lub ustawia pozycję dla następnej operacji odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji . Ta My funkcja zapewnia lepszą produktywność i wydajność operacji we/wy plików niż Seek. Aby uzyskać więcej informacji, zobacz FileSystem.

Seek(Int32, Int64)

Zwraca wartość określającą bieżącą Long pozycję odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji lub ustawia pozycję dla następnej operacji odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji . Ta My funkcja zapewnia lepszą produktywność i wydajność operacji we/wy plików niż Seek. Aby uzyskać więcej informacji, zobacz FileSystem.

Seek(Int32)

Źródło:
FileSystem.vb
Źródło:
FileSystem.vb
Źródło:
FileSystem.vb

Zwraca wartość określającą bieżącą Long pozycję odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji lub ustawia pozycję dla następnej operacji odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji . Ta My funkcja zapewnia lepszą produktywność i wydajność operacji we/wy plików niż Seek. Aby uzyskać więcej informacji, zobacz 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

Parametry

FileNumber
Int32

Wymagane. Element Integer zawierający prawidłowy numer pliku.

Zwraca

Określenie Long bieżącej pozycji odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji lub ustawienie pozycji dla następnej operacji odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji .

Wyjątki

Tryb pliku jest nieprawidłowy.

Przykłady

W tym przykładzie użyto funkcji w Seek celu zwrócenia bieżącej pozycji pliku. W przykładzie założono TestFile , że jest to plik zawierający rekordy struktury Record.

Structure Record   ' Define user-defined type.
    Dim ID As Integer
    Dim Name As String
End Structure

W przypadku plików otwartych w Random trybie Seek zwraca liczbę następnych rekordów.

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)

W przypadku plików otwieranych w trybach innych niż Random tryb zwraca położenie bajtu, Seek w którym następuje następna operacja. Załóżmy TestFile , że jest to plik zawierający kilka wierszy tekstu.

' 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)

W tym przykładzie Seek użyto funkcji do ustawienia pozycji następnego odczytu lub zapisu w pliku.

W przypadku plików otwartych w trybach innych niż Random tryb ustawia położenie bajtu, Seek w którym następuje następna operacja. Załóżmy TestFile , że jest to plik zawierający kilka wierszy tekstu.

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)

Uwagi

Seek Zwraca wartość z zakresu od 1 do 2 147 483 647 (odpowiednik 2^31 – 1), włącznie.

Poniżej opisano wartości zwracane dla każdego trybu dostępu do plików:

Mode Wartość zwracana
Random Liczba następnego rekordu odczytanego lub zapisanego
Binary, Input, Output, Append Położenie bajtu, w którym następuje następna operacja. Pierwszy bajt w pliku znajduje się na pozycji 1, drugi bajt znajduje się na pozycji 2 itd.

Zobacz też

Dotyczy

Seek(Int32, Int64)

Źródło:
FileSystem.vb
Źródło:
FileSystem.vb
Źródło:
FileSystem.vb

Zwraca wartość określającą bieżącą Long pozycję odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji lub ustawia pozycję dla następnej operacji odczytu/zapisu w pliku otwartym przy użyciu FileOpen funkcji . Ta My funkcja zapewnia lepszą produktywność i wydajność operacji we/wy plików niż Seek. Aby uzyskać więcej informacji, zobacz 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)

Parametry

FileNumber
Int32

Wymagane. Element Integer zawierający prawidłowy numer pliku.

Position
Int64

Wymagane. Liczba w zakresie od 1 do 2 147 483 647 włącznie, która wskazuje, gdzie powinna wystąpić następna operacja odczytu/zapisu.

Wyjątki

Tryb pliku jest nieprawidłowy.

Przykłady

W tym przykładzie użyto funkcji w Seek celu zwrócenia bieżącej pozycji pliku. W przykładzie założono TestFile , że jest to plik zawierający rekordy struktury Record.

Structure Record   ' Define user-defined type.
    Dim ID As Integer
    Dim Name As String
End Structure

W przypadku plików otwartych w Random trybie Seek zwraca liczbę następnych rekordów.

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)

W przypadku plików otwieranych w trybach innych niż Random tryb zwraca położenie bajtu, Seek w którym następuje następna operacja. Załóżmy TestFile , że jest to plik zawierający kilka wierszy tekstu.

' 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)

W tym przykładzie Seek użyto funkcji do ustawienia pozycji następnego odczytu lub zapisu w pliku.

W przypadku plików otwartych w trybach innych niż Random tryb ustawia położenie bajtu, Seek w którym następuje następna operacja. Załóżmy TestFile , że jest to plik zawierający kilka wierszy tekstu.

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)

Uwagi

Seek Zwraca wartość z zakresu od 1 do 2 147 483 647 (odpowiednik 2^31 – 1), włącznie.

Poniżej opisano wartości zwracane dla każdego trybu dostępu do plików:

Mode Wartość zwracana
Random Liczba następnego rekordu odczytanego lub zapisanego
Binary, Input, Output, Append Położenie bajtu, w którym następuje następna operacja. Pierwszy bajt w pliku znajduje się na pozycji 1, drugi bajt znajduje się na pozycji 2 itd.

Zobacz też

Dotyczy