Cara: Membaca Dari File Teks di Visual Basic

Metode ReadAllTextMy.Computer.FileSystem objek memungkinkan Anda membaca dari file teks. Pengodean file dapat ditentukan jika konten file menggunakan pengodean seperti ASCII atau UTF-8.

Jika Anda membaca dari file dengan karakter khusus, Anda harus menentukan penyandian file.

Nota

Untuk membaca file satu baris teks pada satu waktu, gunakan OpenTextFileReader metode My.Computer.FileSystem objek. Metode OpenTextFileReader mengembalikan objek StreamReader. Anda dapat menggunakan metode ReadLine dari objek StreamReader untuk membaca file satu baris demi satu baris. Anda dapat menguji akhir file menggunakan EndOfStream metode StreamReader objek.

Untuk membaca dari file teks

Gunakan metode ReadAllText dari objek My.Computer.FileSystem untuk membaca isi file teks ke dalam string dengan memberikan jalurnya. Contoh berikut membaca konten test.txt ke dalam string lalu menampilkannya dalam kotak pesan.

Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("test.txt")
MsgBox(fileReader)

Untuk membaca dari file teks yang dikodekan

ReadAllText Gunakan metode My.Computer.FileSystem objek untuk membaca konten file teks ke dalam string, menyediakan jalur dan jenis pengodean file. Contoh berikut membaca konten file UTF32 test.txt ke dalam string lalu menampilkannya dalam kotak pesan.

Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("test.txt",
   System.Text.Encoding.UTF32)
MsgBox(fileReader)

Untuk membaca dari file teks ke dalam kontrol RichTextBox

Untuk memuat konten file teks langsung ke kontrol RichTextBox, baca konten file ke dalam string dan tetapkan ke Text properti RichTextBox. Contoh berikut menunjukkan cara membaca file teks dan memuatnya ke kontrol RichTextBox.

' Load text file into a RichTextBox control
' Note: This assumes RichTextBox1 is a control on your form
Dim fileText As String
fileText = My.Computer.FileSystem.ReadAllText("test.txt")
' RichTextBox1.Text = fileText

Untuk penanganan kesalahan yang lebih baik dan manajemen jalur file, Anda dapat menggunakan pendekatan berikut yang membangun jalur file yang tepat dan menangani pengecualian potensial. Pendekatan ini menghindari jalur drive hardcoded yang dapat menyebabkan masalah pada sistem yang berbeda:

' Load text file into a RichTextBox control using a specific path
Try
    Dim filePath As String = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "test.txt")
    Dim fileText As String = My.Computer.FileSystem.ReadAllText(filePath)
    ' RichTextBox1.Text = fileText
Catch ex As System.IO.FileNotFoundException
    MsgBox("File not found: " & ex.Message)
Catch ex As Exception
    MsgBox("Error reading file: " & ex.Message)
End Try

Nota

Saat menentukan jalur file, hindari menggunakan jalur absolut yang dikodekan secara permanen seperti "C:\temp\file.txt" karena ini dapat menyebabkan masalah pada sistem di mana huruf drive atau struktur direktori berbeda. Sebagai gantinya, gunakan jalur relatif atau buat jalur menggunakan Combine untuk memastikan kode Anda berfungsi di berbagai lingkungan.

Pemrograman yang Kuat

Kondisi berikut dapat menyebabkan pengecualian:

  • Jalur tidak valid karena salah satu alasan berikut: ini adalah string panjang nol, hanya berisi spasi kosong, berisi karakter yang tidak valid, atau merupakan jalur perangkat (ArgumentException).

  • Jalur tidak valid karena itu adalah 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 konten 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 bukan apa yang diharapkan, dan metode untuk membaca dari file mungkin gagal.

Lihat juga