Jak číst textového souboru pomocí System.IO a Visual Basic 2005 nebo Visual Basic .NET

Překlady článku Překlady článku
ID článku: 302309 - Produkty, které se vztahují k tomuto článku.
Microsoft Visual C# .NET verzi tohoto článku naleznete v tématu 306777.
Microsoft Visual Basic 6.0 verzi tohoto článku naleznete v tématu 183638.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek ukazuje, jak načíst informace z textový soubor a použít třídu ArrayList Chcete-li zobrazit tyto informace uživateli.

Čtení textových souborů v jazyce Visual Basic 2005 nebo Visual Basic .NET

Otevření a čtení souborů pro přístup pro čtení je důležitou součástí vstup a výstup (IO) funkce, i když není nutné zapisovat do souboru v otázce. Tento příklad otevře soubor pro čtení, což je užitečné pro text soubory je ale nevhodný pro binární soubory. V tomto příkladu používá jeden z mnoha metody, které jsou k dispozici pro otevření souboru. Ačkoli mnoho datových struktur jsou k dispozici pro ukládání informací, které je načten ze souboru třídu ArrayList je nejjednodušší struktura použít. Chcete-li otevřít a číst z soubor, tento příklad používá objekty z oboru názvů System.IO konkrétně třídy System.IO.StreamReader .

Poznámka: Tato ukázka vyžaduje určitou formu textu (TXT) soubor, ze kterého ke čtení.

Chcete-li načíst čtení textového souboru z aplikace Microsoft Visual Basic 2005 nebo Microsoft Visual Basic .NET, postupujte podle Tyto kroky:
  1. Spustíte Microsoft Visual Studio 2005 nebo Microsoft Visual Studio .NET. Vytvoření nové aplikace konzoly v jazyce Visual Basic. Visual Studio vytvoří modul , spolu s prázdné procedury Main() .
  2. Ujistěte se, že projekt odkazuje alespoň oboru názvů System . Pomocí příkazu Imports na obory názvů System.Collections , systémua System.IO, takže není nutné kvalifikovat deklarace z těchto oborů názvů později v kódu. Musíte použít tyto příkazy před každým ostatní prohlášení.
    Imports System
    Imports System.IO
    Imports System.Collections
    					
  3. K otevření souboru pro čtení, vytvoření nové instance objektu StreamReader a předejte cestu souboru do konstruktoru takto:
    Dim objReader As New StreamReader("c:\test.txt")
    					
  4. Budete potřebovat řetězcové proměnné, do které chcete uložit každý řádek souboru, jako je proces. Vzhledem k tomu, že budete přidávat tyto řádky do ArrayList, deklarovat a vytvořit objekt tohoto typu i.
    Dim sLine As String = ""
    Dim arrText As New ArrayList()
    					
  5. Existuje několik způsobů pro čtení souboru, včetně ReadToEnd metoda, která čte najednou v celém souboru. Nicméně pro Například můžete použít metodu ReadLine přenést jeden řádek souboru současně. Při ukončení soubor je dosaženo, vrátí tato metoda "Nic," který umožňuje způsob, jak ukončit Vaše smyčka. Při čtení každé řádky ze souboru, můžete použít metodu AddArrayList vložit řádky do vaší třídy ArrayList .
    Do
        sLine = objReader.ReadLine()
        If Not sLine Is Nothing Then
            arrText.Add(sLine)
        End If
    Loop Until sLine Is Nothing
    objReader.Close()
    					
  6. Použijte smyčku "Pro každou" zapsat obsah vaší nově takto vyplněný ArrayList ke konzole:
    For Each sLine In arrText
        Console.WriteLine(sLine)
    Next
    Console.ReadLine()
    					
  7. Uložit a spustit kód, který vytváří seznam vaše soubor konzoly.

Úplný výpis kódu

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
				

Nástrahy

Existuje několik možností, jak mít na zřeteli při práci se souborem Vstup a výstup, včetně následujících položek:
  • Kdykoli přístup k souboru, je možné, že soubor, který chcete číst nebo zapisovat nemusí být v systému nebo dne být používán.
  • Tento příklad načte do paměti dříve, než se celý soubor zpracování souboru. Může nastat situace, ve které je soubor příliš velké mají být drženy v paměti, nebo nemáte oprávnění k přístupu PST.
Některá z těchto situací způsobí výjimku být vyvolána. Je vždy vhodné poskytnout blok try... catch pro zpracování těchto běžných problémů.

Vlastnosti

ID článku: 302309 - Poslední aktualizace: 20. července 2013 - Revize: 3.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Klíčová slova: 
kbvs2005applies kbvs2005swept kbhowtomaster kbmt KB302309 KbMtcs
Strojově přeložený článek
DŮLEŽITÉ: Tento článek je přeložen pomocí softwaru na strojový překlad Microsoft. Nepřesný či chybný překlad lze opravit prostřednictvím technologie Community Translation Framework (CTF). Microsoft nabízí strojově přeložené, komunitou dodatečně upravované články, a články přeložené lidmi s cílem zajistit přístup ke všem článkům v naší znalostní bázi ve více jazycích. Strojově přeložené a dodatečně upravované články mohou obsahovat chyby ve slovníku, syntaxi a gramatice. Společnost Microsoft není odpovědná za jakékoliv nepřesnosti, chyby nebo škody způsobené nesprávným překladem obsahu nebo jeho použitím našimi zákazníky. Více o CTF naleznete na http://support.microsoft.com/gp/machine-translation-corrections/cs.
Projděte si také anglickou verzi článku: 302309

Dejte nám zpětnou vazbu

 

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