FileSystem.FileOpen Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
, Input
Output
, atau Random
. Untuk informasi selengkapnya, lihat OpenMode .
- Access
- OpenAccess
Opsional. Enumerasi yang menentukan operasi yang diizinkan pada file terbuka: Read
, , Write
atau 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 Read
Lock 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.