FileSystem.Seek メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Long
関数を使用して開いたファイル内の現在の読み込み位置または書き込み位置を示す FileOpen
を返します。また、FileOpen
関数で開いたファイルの、次に読み込みまたは書き込みを行う位置を設定します。 My
機能を使用すると、Seek
よりもファイル I/O 処理の生産性とパフォーマンスが向上します。 詳細については、「FileSystem」を参照してください。
オーバーロード
Seek(Int32) |
|
Seek(Int32, Int64) |
|
Seek(Int32)
- ソース:
- 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 |
読み取りまたは書き込まれた次のレコードの番号 |
Binary , Input , Output , Append |
次の操作が行われるバイト位置。 ファイル内の最初のバイトは位置 1、2 番目のバイトは位置 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
よりもファイル 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 |
読み取りまたは書き込まれた次のレコードの番号 |
Binary , Input , Output , Append |
次の操作が行われるバイト位置。 ファイル内の最初のバイトは位置 1、2 番目のバイトは位置 2 などです。 |
こちらもご覧ください
- FileGet
- Loc(Int32)
- FileOpen(Int32, String, OpenMode, OpenAccess, OpenShare, Int32)
- FilePut
- IOException
- Visual Basic でのファイルの読み取り
- Visual Basic でのファイルへの書き込み
適用対象
.NET