Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
ReadAllText nesnesinin My.Computer.FileSystem yöntemi bir metin dosyasından okumanızı sağlar. Dosyanın içeriği ASCII veya UTF-8 gibi bir kodlama kullanıyorsa dosya kodlaması belirtilebilir.
Genişletilmiş karakterler içeren bir dosyadan okuyorsanız, dosya kodlamasını belirtmeniz gerekir.
Uyarı
Bir dosyayı tek seferde tek satırlık bir metin okumak için nesnesinin OpenTextFileReaderMy.Computer.FileSystem yöntemini kullanın.
OpenTextFileReader metodu bir StreamReader nesnesi döndürür.
ReadLine nesnesinin StreamReader yöntemini kullanarak bir dosyayı birer satır okuyabilirsiniz. Dosyanın sonunu, EndOfStream nesnesinin StreamReader yöntemini kullanarak test edebilirsiniz.
Metin dosyasından okumak için
ReadAllText nesnesinin My.Computer.FileSystem yöntemini kullanarak bir metin dosyasının içeriğini bir dizeye okuyun ve dosya yolunu sağlayın. Aşağıdaki örnek, test.txt içeriğini bir dizeye okur ve bir ileti kutusunda görüntüler.
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("test.txt")
MsgBox(fileReader)
Kodlanmış bir metin dosyasından okumak için
ReadAllText nesnesinin My.Computer.FileSystem yöntemini kullanarak bir metin dosyasının içeriğini bir dizeye okumak için dosya yolunu ve kodlama türünü belirtin. Aşağıdaki örnek, test.txt UTF32 dosyasının içeriğini bir dizeye okur ve ardından bir ileti kutusunda görüntüler.
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("test.txt",
System.Text.Encoding.UTF32)
MsgBox(fileReader)
Metin dosyasından RichTextBox denetimine okumak için
Bir metin dosyasının içeriğini doğrudan RichTextBox denetimine yüklemek için, dosya içeriğini bir dizeye okuyun ve RichTextBox özelliğine Text atayın. Aşağıdaki örnekte, bir metin dosyasının nasıl okunduğu ve RichTextBox denetimine nasıl yükleyebileceğiniz gösterilmektedir.
' 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
Daha iyi hata işleme ve dosya yolu yönetimi için, uygun bir dosya yolu oluşturan ve olası özel durumları işleyen aşağıdaki yaklaşımı kullanabilirsiniz. Bu yaklaşım, farklı sistemlerde sorunlara neden olabilecek sabit kodlanmış sürücü yollarını önler:
' 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
Uyarı
Dosya yollarını belirtirken, "C:\temp\file.txt" gibi sabit kodlanmış mutlak yollar kullanmaktan kaçının çünkü bunlar sürücü harfinin veya dizin yapısının farklı olduğu sistemlerde sorunlara neden olabilir. Bunun yerine, kodunuzun farklı ortamlarda çalıştığından emin olmak için göreli yolları kullanın veya kullanarak Combine yollar oluşturabilirsiniz.
Sağlam Programlama
Aşağıdaki koşullar bir özel duruma neden olabilir:
Yol aşağıdaki nedenlerden biri için geçerli değildir: sıfır uzunluklu bir dizedir, yalnızca boşluk içerir, geçersiz karakterler içerir veya bir cihaz yoludur (ArgumentException).
Yol geçerli değil çünkü
Nothing(ArgumentNullException).Dosya yok (FileNotFoundException).
Dosya başka bir işlem tarafından kullanılıyor veya G/Ç hatası oluşuyor (IOException).
Yol, sistem tarafından tanımlanan uzunluk üst sınırını (PathTooLongException) aşıyor.
Yoldaki bir dosya veya dizin adı, iki nokta üst üste (:) içeriyor ya da geçersiz bir biçimde (NotSupportedException) olabilir.
Dizeyi arabelleğe (OutOfMemoryException) yazmak için yeterli bellek yok.
Kullanıcı, yolu ( ) görüntülemek için gerekli izinlere sahipSecurityException değil.
Dosyanın adı yerine dosyanın içeriğine göre kararlar almayın. Örneğin, Form1.vb dosyası bir Visual Basic kaynak dosyası olmayabilir.
Uygulamanızda verileri kullanmadan önce tüm girişleri doğrulayın. Dosyanın içeriği beklendiği gibi olmayabilir ve dosyadan okuma yöntemleri başarısız olabilir.
Ayrıca bakınız
- FileSystem
- ReadAllText
- Dosyalardan Okuma
- Nasıl yapılır: Comma-Delimited Metin Dosyalarından Okuma
- Nasıl yapılır: Sabit Genişlikli Metin Dosyalarından Okuma
- Nasıl yapılır: Birden Çok Biçimli Metin Dosyalarından Okuma
- Sorun Giderme: Metin Dosyalarından Okuma ve Metin Dosyalarına Yazma
- İzlenecek yol: Visual Basic'te Dosyaları ve Dizinleri Düzenleme
- Dosya Kodlamaları