Bagikan melalui


FileSystem.FileOpen Metode

Definisi

Membuka file untuk input atau output. Fitur ini My memberi Anda produktivitas dan performa yang lebih baik dalam operasi I/O file daripada FileOpen. Untuk informasi selengkapnya, lihat FileSystem.

public static void FileOpen (int FileNumber, string FileName, Microsoft.VisualBasic.OpenMode Mode, Microsoft.VisualBasic.OpenAccess Access = Microsoft.VisualBasic.OpenAccess.Default, Microsoft.VisualBasic.OpenShare Share = Microsoft.VisualBasic.OpenShare.Default, int RecordLength = -1);
static member FileOpen : int * string * Microsoft.VisualBasic.OpenMode * Microsoft.VisualBasic.OpenAccess * Microsoft.VisualBasic.OpenShare * int -> unit
Public Sub FileOpen (FileNumber As Integer, FileName As String, Mode As OpenMode, Optional Access As OpenAccess = Microsoft.VisualBasic.OpenAccess.Default, Optional Share As OpenShare = Microsoft.VisualBasic.OpenShare.Default, Optional RecordLength As Integer = -1)

Parameter

FileNumber
Int32

Wajib diisi. Nomor file apa pun yang valid. FreeFile Gunakan fungsi untuk mendapatkan nomor file berikutnya yang tersedia.

FileName
String

Wajib diisi. Ekspresi string yang menentukan nama file - dapat menyertakan direktori atau folder, dan drive.

Mode
OpenMode

Wajib diisi. Enumerasi yang menentukan mode file: Append, , Binary, InputOutput, atau Random. Untuk informasi selengkapnya, lihat OpenMode .

Access
OpenAccess

Opsional. Enumerasi yang menentukan operasi yang diizinkan pada file terbuka: Read, , Writeatau ReadWrite. Default ke ReadWrite. Untuk informasi selengkapnya, lihat OpenAccess .

Share
OpenShare

Opsional. Enumerasi yang menentukan operasi yang tidak diizinkan pada file terbuka oleh proses lain: Shared, , Lock ReadLock Write, dan Lock Read Write. Default ke Lock Read Write. Untuk informasi selengkapnya, lihat OpenShare .

RecordLength
Int32

Opsional. Angka kurang dari atau sama dengan 32.767 (byte). Untuk file yang dibuka untuk akses acak, nilai ini adalah panjang rekaman. Untuk file berurutan, nilai ini adalah jumlah karakter yang di-buffer.

Pengecualian

Panjang rekaman negatif (dan tidak sama dengan -1).

FileName sudah terbuka, atau FileName tidak valid.

Contoh

Contoh ini menggambarkan berbagai penggunaan FileOpen fungsi untuk mengaktifkan input dan output ke file.

Kode berikut membuka file TestFile dalam Input mode .

FileOpen(1, "TESTFILE", OpenMode.Input)
' Close before reopening in another mode.
FileClose(1)

Contoh ini membuka file dalam Binary mode hanya untuk menulis operasi.

FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Write)
' Close before reopening in another mode.
FileClose(1)

Contoh berikut membuka file dalam Random mode . File berisi rekaman struktur 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

Contoh kode ini membuka file dalam Output mode; proses apa pun dapat membaca atau menulis ke file.

FileOpen(1, "TESTFILE", OpenMode.Output, OpenAccess.Default, OpenShare.Shared)
' Close before reopening in another mode.
FileClose(1)

Contoh kode ini membuka file dalam Binary mode untuk dibaca; proses lain tidak dapat membaca file.

FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Read,
   OpenShare.LockRead)

Keterangan

Fungsi FileOpen ini disediakan untuk kompatibilitas mundur dan dapat memengaruhi performa. Untuk aplikasi non-warisan, My.Computer.FileSystem objek memberikan performa yang lebih baik. Untuk informasi selengkapnya, lihat Akses File dengan Visual Basic.

Anda harus membuka file sebelum operasi I/O dapat dilakukan padanya. FileOpen mengalokasikan buffer untuk I/O ke file dan menentukan mode akses untuk digunakan dengan buffer.

Penting

Saat menulis ke file, aplikasi mungkin harus membuat file, jika file yang coba ditulis tidak ada. Untuk melakukannya, perlu izin untuk direktori tempat file akan dibuat. Namun, jika file yang ditentukan oleh FileName memang ada, aplikasi hanya memerlukan Write izin ke file itu sendiri. Jika memungkinkan, untuk membantu meningkatkan keamanan, buat file selama penyebaran dan berikan Write izin hanya ke file tersebut, alih-alih ke seluruh direktori. Untuk membantu meningkatkan keamanan, tulis data ke direktori pengguna alih-alih ke direktori akar atau direktori Program Files.

Saluran yang akan dibuka dapat ditemukan dengan menggunakan FreeFile() fungsi .

Penting

Fungsi ini FileOpen memerlukan Read akses dari FileIOPermissionAccess enumerasi, yang dapat memengaruhi eksekusinya dalam situasi kepercayaan parsial. Untuk informasi selengkapnya, lihat FileIOPermissionAccess enumerasi.

Berlaku untuk

Lihat juga