Bir metin dosyası System.IO Visual Basic 2005 veya Visual Basic .NET kullanarak nasıl okunur

Makale çevirileri Makale çevirileri
Makale numarası: 302309 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makalenin Microsoft Visual C# .NET sürümü için bkz: 306777.
Bu makalenin Microsoft Visual Basic 6.0 sürümü için bkz: 183638.
Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Bu makalede nasıl bilgi alınacağını gösterir bir metin dosyası ve bu bilgileri kullanıcıya görüntülenecek bir ArrayList sınıfını kullanın.

Visual Basic 2005 veya Visual Basic .NET metin dosyalarını okuma

Açma ve okuma erişimi okunurken önemli bir parçası olan dosyaya yazmak gerekmez bile (IO) işlevselliği, giriş/çıkış söz konusu olur. Bu örnek metin için yararlı olan okumak için bir dosya açar dosyalar ancak ikili dosyalar için uygun. Bu örnek birçok birini kullanır. dosyayı açmak için kullanılabilir yöntemleri. Ancak çok sayıda veri yapıları olan dosyadan alınan bilgileri depolamak bir ArrayList sınıfını kullanmak için en kolay yapısı kullanılabilir. Açmak ve okumak için Dosya, bu örnek System.IO ad, özellikle System.IO.StreamReader sınıf nesneleri kullanır.

Not Bu örnek, bir metin (.txt) dosyasından çeşit gerektirir okumak için.

Yükleyin ve bir metin dosyasına Microsoft Visual Basic 2005 veya Microsoft Visual Basic .NET okumak için izleyin aşağıdaki adımları:
  1. Microsoft Visual Studio 2005 veya Microsoft Visual Studio .NET başlatın. Yeni bir konsol uygulaması oluşturun Visual Basic. Visual Studio modülü sizin için boş bir Main() yordamı oluşturur.
  2. Proje en az Sistem ad alanına başvurduğundan emin olun. Gelen bildirimleri niteleme gerekmez böylece System.CollectionsSistemve System.IOad alanları üzerinde Imports ifadesini kullanın Bu ad daha sonra kodunuzda. Bu ifadeler herhangi önce kullanmanız gerekir diğer bildirimler.
    Imports System
    Imports System.IO
    Imports System.Collections
    					
  3. Okumak için bir dosyayı açmak için StreamReader nesnenin yeni bir örneğini oluşturun ve dosyanın yolunu aşağıdaki gibi oluşturucusuna geçirin:
    Dim objReader As New StreamReader("c:\test.txt")
    					
  4. Her satırı depolanacağı bir dize değişkeni gerekir dosyası olarak, işlem. Bu satırlar bir ArrayListeklemek olacaktır çünkü bildirmek ve bu tür bir nesne oluşturun.
    Dim sLine As String = ""
    Dim arrText As New ArrayList()
    					
  5. Dosyanın tamamını tek seferde okur ReadToEnd yöntemi dahil, dosyayı okumak için birkaç yolu vardır. Ancak, bunun için Örneğin, aynı anda dosya tek satırda getirmek için ReadLine yöntemini kullanabilirsiniz. Zaman sonu dosyayı ulaşıldığında, bu yöntem "Şey" işlevi sona erdirmek bir yol sağlar Döngü. Her satırda Dosyadan okurken, ArrayList sınıfınızın satırları eklemek için Add yöntemini ArrayList kullanabilirsiniz.
    Do
        sLine = objReader.ReadLine()
        If Not sLine Is Nothing Then
            arrText.Add(sLine)
        End If
    Loop Until sLine Is Nothing
    objReader.Close()
    					
  6. "Her biri için" döngü içeriğini yazmak için kullanın, yeni ArrayList konsola aşağıdaki gibi doldurulmuştur:
    For Each sLine In arrText
        Console.WriteLine(sLine)
    Next
    Console.ReadLine()
    					
  7. Kaydedin ve bir liste oluşturur, kodunuzu çalıştırın, konsol dosyasını.

Tam kod listesi

Imports System
Imports System.IO
Imports System.Collections

Module Module1

    Sub Main()
        Dim objReader As New StreamReader("c:\test.txt")
        Dim sLine As String = ""
        Dim arrText As New ArrayList()

        Do
            sLine = objReader.ReadLine()
            If Not sLine Is Nothing Then
                arrText.Add(sLine)
            End If
        Loop Until sLine Is Nothing
        objReader.Close()

        For Each sLine In arrText
            Console.WriteLine(sLine)
        Next
        Console.ReadLine()
    End Sub

End Module
				

Tuzaklar

Dosyasıyla çalışırken bilmeniz gereken birkaç şey vardır. I/O, aşağıdaki öğeleri de dahil olmak üzere:
  • Her zaman bir dosyaya erişmek, olasılığı vardır, okumaya veya yazmaya çalıştığınız dosya sistem veya Mayıs olmayabilir kullanılıyor.
  • Bu örnek dosyanın tamamını onu önce belleğe okur. dosyayı işler. Dosya çok olduğu bir durumla karşılaşabilirsiniz. bellekte tutulması büyük veya erişmek için izinlere sahip olmayabilirsiniz dosya.
Bu durumlardan herhangi biri bir özel durum oluşturulması neden. Bu Bu ortak sorunları ele almak için bir try... catch bloğu sağlamak için her zaman iyi bir yöntemdir.

Özellikler

Makale numarası: 302309 - Last Review: 7 Haziran 2013 Cuma - Gözden geçirme: 3.0
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Anahtar Kelimeler: 
kbvs2005applies kbvs2005swept kbhowtomaster kbmt KB302309 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, Microsoft Makine Çevirisi Düzenleme yazılımı tarafından tercüme edilmiş olup, yüksek olasılıkla profesyonel bir çevirmen yerine CTF teknolojisi kullanılarak, Microsoft Topluluğu tarafından düzenlenmiştir. Microsoft, Bilgi Bankamız içindeki tüm makaleleri kendi dilinizde okuyabilmeniz için size hem profesyonel çevirmenler tarafından tercüme edilen hem de makine tarafından tercüme edildikten sonra Topluluk tarafından kontrol edilen makaleler sunar. Bununla birlikte, makine tarafından tercüme edilen, hatta Topluluk tarafından kontrol edilen bir makale bile her zaman mükemmel dil kalitesinde olmayabilir. Makalede dilinizi konuşan yabancı birisinin yapabileceği türden sözcük, söz dizimi veya dilbilgisi hataları bulunabilir. Microsoft, içeriğin hatalı tercümesinin veya müşterilerimiz tarafından kullanımının doğurabileceği olası yanlış anlamalar, hatalar veya zararlardan sorumlu değildir. Öte yandan Microsoft, Makine Çevirisi Düzenleme işlemini geliştirmek amacıyla Makine Çevirisi Düzenleme yazılımını ve araçlarını sık sık güncelleştirmektedir.
Makalenin İngilizcesi aşağıdaki gibidir: 302309

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com