Cara: Membaca Dari File Biner di Visual Basic
Objek My.Computer.FileSystem
menyediakan metode ReadAllBytes
untuk membaca dari file biner.
Untuk membaca dari file biner
Gunakan metode
ReadAllBytes
, yang mengembalikan konten file sebagai array byte. Contoh ini membaca dari fileC:/Documents and Settings/selfportrait.jpg
.Dim bytes = My.Computer.FileSystem.ReadAllBytes( "C:/Documents and Settings/selfportrait.jpg") PictureBox1.Image = Image.FromStream(New IO.MemoryStream(bytes))
Untuk file biner besar, Anda dapat menggunakan metode Readdari objek FileStream untuk membaca dari file hanya dalam jumlah waktu tertentu. Anda kemudian dapat membatasi berapa banyak file yang dimuat ke dalam memori untuk setiap operasi baca. Contoh kode berikut menyalin file dan memungkinkan pemanggil untuk menentukan berapa banyak file yang dibaca ke dalam memori per operasi baca.
' This method does not trap for exceptions. If an exception is ' encountered opening the file to be copied or writing to the ' destination location, then the exception will be thrown to ' the requestor. Public Sub CopyBinaryFile(ByVal path As String, ByVal copyPath As String, ByVal bufferSize As Integer, ByVal overwrite As Boolean) Dim inputFile = IO.File.Open(path, IO.FileMode.Open) If overwrite AndAlso My.Computer.FileSystem.FileExists(copyPath) Then My.Computer.FileSystem.DeleteFile(copyPath) End If ' Adjust array length for VB array declaration. Dim bytes = New Byte(bufferSize - 1) {} While inputFile.Read(bytes, 0, bufferSize) > 0 My.Computer.FileSystem.WriteAllBytes(copyPath, bytes, True) End While inputFile.Close() End Sub
Pemrograman yang Kuat
Kondisi berikut dapat menyebabkan pengecualian diberikan:
Jalur tidak valid karena salah satu alasan berikut: ini adalah string panjang nol, hanya berisi spasi putih, berisi karakter yang tidak valid, atau merupakan jalur perangkat (ArgumentException).
Jalur tidak valid karena
Nothing
(ArgumentNullException).File tidak ada (FileNotFoundException).
File sedang digunakan oleh proses lain, atau terjadi kesalahan I/O (IOException).
Jalur melebihi panjang maksimum yang ditentukan sistem (PathTooLongException).
Nama file atau direktori di jalur berisi titik dua (:) atau dalam format yang tidak valid (NotSupportedException).
Memori tidak cukup untuk menulis string ke buffer (OutOfMemoryException).
Pengguna tidak memiliki izin yang diperlukan untuk melihat jalur (SecurityException).
Jangan membuat keputusan tentang isi file berdasarkan nama file. Misalnya, file Form1.vb mungkin bukan file sumber Visual Basic.
Verifikasi semua input sebelum menggunakan data di aplikasi Anda. Isi file mungkin tidak seperti yang diharapkan, dan metode untuk membaca dari file mungkin gagal.
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk