FileSystem.Seek メソッド

定義

Long関数を使用して開かれたファイルの現在の読み取り/書き込み位置を指定するFileOpenを返すか、FileOpen関数を使用して開かれたファイル内の次の読み取り/書き込み操作の位置を設定します。 My機能を使用すると、Seekよりもファイル I/O 操作の生産性とパフォーマンスが向上します。 詳細については、FileSystemを参照してください。

オーバーロード

名前 説明
Seek(Int32)

Long関数を使用して開かれたファイルの現在の読み取り/書き込み位置を指定するFileOpenを返すか、FileOpen関数を使用して開かれたファイル内の次の読み取り/書き込み操作の位置を設定します。 My機能を使用すると、Seekよりもファイル I/O 操作の生産性とパフォーマンスが向上します。 詳細については、FileSystemを参照してください。

Seek(Int32, Int64)

Long関数を使用して開かれたファイルの現在の読み取り/書き込み位置を指定するFileOpenを返すか、FileOpen関数を使用して開かれたファイル内の次の読み取り/書き込み操作の位置を設定します。 My機能を使用すると、Seekよりもファイル I/O 操作の生産性とパフォーマンスが向上します。 詳細については、FileSystemを参照してください。

Seek(Int32)

ソース:
FileSystem.vb
ソース:
FileSystem.vb
ソース:
FileSystem.vb
ソース:
FileSystem.vb
ソース:
FileSystem.vb

Long関数を使用して開かれたファイルの現在の読み取り/書き込み位置を指定するFileOpenを返すか、FileOpen関数を使用して開かれたファイル内の次の読み取り/書き込み操作の位置を設定します。 My機能を使用すると、Seekよりもファイル I/O 操作の生産性とパフォーマンスが向上します。 詳細については、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 読み取りまたは書き込みが行われる次のレコード番号。
BinaryInputOutputAppend 次の操作が発生するバイト位置。 ファイル内の先頭バイトの位置は 1、次のバイトの位置は 2 というようになります。

こちらもご覧ください

適用対象

Seek(Int32, Int64)

ソース:
FileSystem.vb
ソース:
FileSystem.vb
ソース:
FileSystem.vb
ソース:
FileSystem.vb
ソース:
FileSystem.vb

Long関数を使用して開かれたファイルの現在の読み取り/書き込み位置を指定するFileOpenを返すか、FileOpen関数を使用して開かれたファイル内の次の読み取り/書き込み操作の位置を設定します。 My機能を使用すると、Seekよりもファイル I/O 操作の生産性とパフォーマンスが向上します。 詳細については、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 読み取りまたは書き込みが行われる次のレコード番号。
BinaryInputOutputAppend 次の操作が発生するバイト位置。 ファイル内の先頭バイトの位置は 1、次のバイトの位置は 2 というようになります。

こちらもご覧ください

適用対象