FileSystem.FileOpen メソッド
アセンブリ: Microsoft.VisualBasic (microsoft.visualbasic.dll 内)

Public Shared Sub FileOpen ( _ FileNumber As Integer, _ FileName As String, _ Mode As OpenMode, _ <OptionalAttribute> Optional Access As OpenAccess = OpenAccess.Default, _ <OptionalAttribute> Optional Share As OpenShare = OpenShare.Default, _ <OptionalAttribute> Optional RecordLength As Integer = -1 _ )
Dim FileNumber As Integer Dim FileName As String Dim Mode As OpenMode Dim Access As OpenAccess Dim Share As OpenShare Dim RecordLength As Integer FileSystem.FileOpen(FileNumber, FileName, Mode, Access, Share, RecordLength)
public static void FileOpen ( int FileNumber, string FileName, OpenMode Mode, [OptionalAttribute] OpenAccess Access, [OptionalAttribute] OpenShare Share, [OptionalAttribute] int RecordLength )
public: static void FileOpen ( int FileNumber, String^ FileName, OpenMode Mode, [OptionalAttribute] OpenAccess Access, [OptionalAttribute] OpenShare Share, [OptionalAttribute] int RecordLength )
public static void FileOpen ( int FileNumber, String FileName, OpenMode Mode, /** @attribute OptionalAttribute() */ OpenAccess Access, /** @attribute OptionalAttribute() */ OpenShare Share, /** @attribute OptionalAttribute() */ int RecordLength )
public static function FileOpen ( FileNumber : int, FileName : String, Mode : OpenMode, Access : OpenAccess, Share : OpenShare, RecordLength : int )
- Access
省略可能。開いているファイルで許可されている操作 (Read、Write、または ReadWrite) を示す列挙体。既定で ReadWrite に設定されます。詳細については、「OpenAccess 列挙型」を参照してください。

詳細については、Visual Basic のトピック「FileOpen 関数」を参照してください。
FileOpen 関数は、下位互換性を目的として用意されており、パフォーマンスに影響を与える可能性があります。非レガシ アプリケーションに対して、My.Computer.FileSystem オブジェクトはより優れたパフォーマンスを発揮します。詳細については、「Visual Basic におけるファイル アクセス」を参照してください。
I/O 操作を実行するには対象のファイルを開く必要があります。FileOpen により、I/O 用のバッファがファイルに割り当てられ、バッファで使用されるアクセスのモードが決定されます。
![]() |
---|
ファイルに書き込むときに、書き込む対象となるファイルが存在しない場合には、アプリケーションでファイルを作成する必要があります。そのためには、ファイルを作成するディレクトリに対するアクセス許可が必要です。ただし、FileName によって指定されたファイルが存在する場合は、ファイル自体への Write アクセス許可だけが必要になります。セキュリティを強化するために、可能な限り配置時にファイルを作成し、ディレクトリ全体ではなく該当ファイルだけに Write アクセス許可を与えてください。また、データをルート ディレクトリや Program Files ディレクトリではなく、ユーザー ディレクトリに書き込んでください。 |
FreeFile() 関数を使用して、開くチャネルを検索できます。
![]() |
---|
FileOpen 関数には、FileIOPermissionAccess 列挙体からの Read アクセスが必要です。ただし、部分的に信頼されている状況でこの許可を使用すると、プログラムの実行に影響を及ぼす場合があります。詳細については、FileIOPermissionAccess 列挙体のトピックおよび「アクセス許可の要求」を参照してください。 |

この例は、ファイルに対する入出力を有効にする FileOpen 関数のさまざまな使用法を示しています。
TestFile ファイルを 入力モードで開くコードを次に示します。
書き込み操作だけのためにファイルを バイナリ モードで開く例を次に示します。
FileOpen(1, "TESTFILE", OpenMode.Binary,OpenAccess.Write) ' Close before reopening in another mode. FileClose(1)
ファイルを ランダム モードで開く例を次に示します。ファイルには、構造体 Person のレコードが含まれています。
Structure Person <VBFixedString(30)> Dim Name As String Dim ID As Integer End Structure Public Sub ExampleMethod() ' Count 30 for the string, plus 4 for the integer. FileOpen(1, "TESTFILE", OpenMode.Random, , , 34) ' Close before reopening in another mode. FileClose(1) End Sub
ファイルを 出力モードで開くコード例を次に示します。任意のプロセスでファイルを読み書きできます。
FileOpen(1, "TESTFILE", OpenMode.Output, OpenAccess.Default, OpenShare.Shared) ' Close before reopening in another mode. FileClose(1)
ファイルを バイナリ モードで開くコード例を次に示します。他のプロセスはファイルを読み込むことができません。
FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Read,
_
OpenShare.LockRead)

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


FileSystem クラス
FileSystem メンバ
Microsoft.VisualBasic 名前空間
その他の技術情報
FileOpen 関数
FileClose 関数
FreeFile 関数
Visual Basic でのファイルの読み取り
Visual Basic でのファイルへの書き込み
- FileSystem.FileOpen メソッドのページへのリンク