Zum Lesen und Schreiben in eine Textdatei mithilfe von Visual Basic 2005 oder Visual Basic.NET

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 315828 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Ein Microsoft-Visual Basic-6.0-Version dieses Artikels finden Sie unter 183638.
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel veranschaulicht, wie Lese- und Schreibzugriff auf ein Textdatei mithilfe von Microsoft Visual Basic 2005 oder Microsoft Visual Basic.NET.

Anforderungen

Die folgende Liste führt die empfohlene Hardware, Software, Netzwerkinfrastruktur und Servicepacks, die Sie benötigen:
  • Visual Basic 2005 oder Visual Basic.NET
Dieser Artikel setzt voraus, dass Sie mit den folgenden Themen vertraut sind:
  • Visual Basic 2005 oder Visual Basic.NET

Lesen und Schreiben von Textdateien

Die"Lesen einer Textdatei" Abschnitt veranschaulicht das StreamReader -Objekt verwenden, um eine Textdatei zu lesen. Die"Schreiben einer Textdatei (Beispiel 1)"Abschnitt und die "Schreiben einer Textdatei (Beispiel 2)" Abschnitt veranschaulichen, wie die StreamWriter -Klasse verwenden, um Text in eine Datei schreiben.

Lesen einer Textdatei

Der folgende Code verwendet die StreamReader -Klasse öffnen, lesen und die Textdatei zu schließen. Sie können übergeben der Pfadname einer Textdatei an den Konstruktor StreamReader zum Öffnen der Datei automatisch. Die ReadLine -Methode liest jede Textzeile und erhöht den Dateizeiger an wie sie die nächste Zeile liest. Wenn die ReadLine -Methode das Ende der Datei erreicht, wird Nothingzurückgegeben.
  1. Starten Sie Microsoft Visual Studio 2005 oder Microsoft Visual Studio.NET.
  2. Erstellen Sie eine neue Konsolenanwendung in 2005 Visual Basic oder Visual Basic .NET.
  3. Fügen Sie den folgenden Code an den Anfang der Datei Module1.vb:
    Imports System.IO
    					
  4. Die Sub Main -Prozedur den folgenden Code hinzufügen.
    Dim objStreamReader As StreamReader
        Dim strLine As String
    
        'Pass the file path and the file name to the StreamReader constructor.
        objStreamReader = New StreamReader("C:\Boot.ini")
    
        'Read the first line of text.
        strLine = objStreamReader.ReadLine
    
        'Continue to read until you reach the end of the file.
        Do While Not strLine Is Nothing
    
          'Write the line to the Console window.
          Console.WriteLine(strLine)
    
          'Read the next line.
          strLine = objStreamReader.ReadLine
        Loop
    
        'Close the file.
        objStreamReader.Close()
    
        Console.ReadLine()
    					
  5. Klicken Sie im Menü Debuggen auf Starten , zum Kompilieren und zum Ausführen der Anwendung. Drücken Sie die EINGABETASTE, um schließen die Konsolenfenster.

    Das Konsolenfenster zeigt die Datei "Boot.ini". Hinweis dass der Inhalt der Datei Boot.ini von Konfiguration variieren Konfiguration. Die folgende Ausgabe ist eine Beispiel-Boot.ini-Datei:
    [boot loader]
    timeout=5
    default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
    
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows 2000 Professional" /fastdetect
    C:\ = "Windows 98"
    						

Schreiben einer Textdatei (Beispiel 1)

Der folgende Code verwendet die StreamWriter -Klasse öffnen, schreiben und die Textdatei zu schließen. Ähnliche in StreamReaderkönnen Sie den Pfadnamen der Textdatei an den StreamWriter -Konstruktor zum Öffnen der Datei automatisch übergeben. Die WriteLine -Methode schreibt eine vollständige Textzeile in die Textdatei.
  1. Starten Sie Visual Studio 2005 oder Visual Studio.NET.
  2. Erstellen Sie eine neue Konsolenanwendung in 2005 Visual Basic oder Visual Basic .NET.
  3. Fügen Sie den folgenden Code am Anfang der Module1.vb:
    Imports System.IO
    					
  4. Die Sub Main -Prozedur den folgenden Code hinzufügen:
    Dim objStreamWriter As StreamWriter
        
       'Pass the file path and the file name to the StreamWriter constructor.
       objStreamWriter = New StreamWriter("C:\Testfile.txt")
    
       'Write a line of text.
       objStreamWriter.WriteLine("Hello World")
    
       'Write a second line of text.
       objStreamWriter.WriteLine("From the StreamWriter class")
    
       'Close the file.
       objStreamWriter.Close()
    					
  5. Klicken Sie im Menü Debuggen auf Starten , zum Kompilieren und zum Ausführen der Anwendung.

    Dieser code erstellt eine Datei mit dem Namen Test.txt auf Laufwerk c: Öffnen Test.txt in einem Texteditor, der solche als Editor. Test.txt enthält zwei Textzeilen:
    Hello World
    From the StreamWriter class
    						

Schreiben einer Textdatei (Beispiel 2)

Der folgende Code verwendet die StreamWriter -Klasse öffnen, schreiben und die Textdatei zu schließen. Im Gegensatz zu im vorherigen Beispiel dieser Code übergibt zwei zusätzliche Parameter, die Konstruktor.

Der erste Parameter ist der Pfad und Dateinamen der die Datei. Der zweite Parameter, Truegibt an, dass die Datei geöffnet werden im append-Modus. Wenn Sie angeben False für den zweiten Parameter, wird der Inhalt der Datei jedes Mal, wenn Sie den Code ausführen, werden überschrieben. Der dritte Parameter gibt Unicode , damit StreamWriter die Datei in Unicode codiert. Sie können auch Folgendes angeben Codierungsmethoden für den dritten Parameter:
  • ASCII
  • BigEndianUnicode
  • UTF7
  • UTF8
Die Write -Methode ähnelt die WriteLine- Methode mit der Ausnahme, dass Schreiben nicht automatisch einen Wagenrücklauf/Zeilenvorschub (CR/LF) eingebettet werden Kombination aus. Dies ist nützlich, wenn Sie Zeichen für Zeichen schreiben ein Zeit.
  1. Starten Sie Visual Studio 2005 oder Visual Studio.NET.
  2. Erstellen Sie eine neue Konsolenanwendung in 2005 Visual Basic oder Visual Basic .NET.
  3. Fügen Sie den folgenden Code am Anfang der Module1.vb:
    Imports System.IO
    Imports System.Text
    					
  4. Fügen Sie folgenden Code an die Sub Main -Prozedur unter den vorhandenen Code:
    Dim objStreamWriter As StreamWriter
       Dim x As Long
        
       'Open the file.
       objStreamWriter = New StreamWriter("C:\Test2.txt", True, _
          Encoding.Unicode)
    
       'Write out the numbers 1 through 10 on the same line.
       For x = 1 To 10
         objStreamWriter.Write(x)
       Next x
        
       'Close the file.
       objStreamWriter.Close()
    					
  5. Klicken Sie im Menü Debuggen auf Starten , zum Kompilieren und zum Ausführen der Anwendung.

    Dieser code erstellt eine Datei mit dem Namen Test2.txt auf Laufwerk c: Öffnen Test2.txt in einem Texteditor, der solche als Editor. Test2.txt enthält eine einzelne Textzeile:
    12345678910
    							
    Hinweis Wenn Sie den Code mehrmals ausführen, ist der "123456789" text auf der gleichen Zeile wiederholt.

Vollständige Codeauflistung

'Read a Text File
Imports System.IO
Module Module1

    Sub Main()
        Dim objStreamReader As StreamReader
        Dim strLine As String

        'Pass the file path and the file name to the StreamReader constructor.
        objStreamReader = New StreamReader("C:\Boot.ini")

        'Read the first line of text.
        strLine = objStreamReader.ReadLine

        'Continue to read until you reach the end of the file.
        Do While Not strLine Is Nothing

            'Write the line to the Console window.
            Console.WriteLine(strLine)

            'Read the next line.
            strLine = objStreamReader.ReadLine
        Loop

        'Close the file.
        objStreamReader.Close()

        Console.ReadLine()
    End Sub
End Module

'Write a Text File: Version 1
Imports System.IO
Module Module1

    Sub Main()
        Dim objStreamWriter As StreamWriter

        'Pass the file path and the file name to the StreamWriter constructor.
        objStreamWriter = New StreamWriter("C:\Text.txt")

        'Write a line of text.
        objStreamWriter.WriteLine("Hello World")

        'Write a second line of text.
        objStreamWriter.WriteLine("From the StreamWriter class")

        'Close the file.
        objStreamWriter.Close()

    End Sub
End Module

'Write a Text File: Version 2
Imports System.IO
Imports System.Text
Module Module1

    Sub Main()
        Dim objStreamWriter As StreamWriter
        Dim x As Long

        'Open the file.
        objStreamWriter = New StreamWriter("C:\Test2.txt", True, _
           Encoding.Unicode)

        'Write out the numbers 1 through 10 on the same line.
        For x = 1 To 10
            objStreamWriter.Write(x)
        Next x

        'Close the file.
        objStreamWriter.Close()
    End Sub

End Module
				

Problembehandlung

Wenn Sie Eingabe oder Ausgabe eine Datei, ist es gut Programmierung Üben Sie den Code in einen Try-Ende-Try -Block einschließen, für den Fall, dass ein Fehler auftritt. Einige möglichen Fehlern zählen ein Datei, die nicht vorhanden ist, oder eine Datei, die bereits verwendet wird.

Informationsquellen

Weitere Informationen finden Sie auf der folgenden Microsoft-Website Sites:
Wie kann ich...Lesen einer Textdatei?
http://msdn.Microsoft.com/en-us/library/db5x7c0d.aspx


Wie kann ich...Lesen und Schreiben von große Dateien?
http://msdn.Microsoft.com/en-us/library/6ka1wd3w (v=vs.80) aspx

StreamReader-Klasse
http://msdn.Microsoft.com/en-us/library/System.IO.StreamReader (v=vs.71) aspx

StreamWriter-Klasse
http://msdn.Microsoft.com/en-us/library/System.IO.StreamWriter (v=vs.71) aspx

Eigenschaften

Artikel-ID: 315828 - Geändert am: Donnerstag, 7. Juni 2012 - Version: 3.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Keywords: 
kbvs2005swept kbvs2005applies kbhowtomaster kbmt KB315828 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 315828
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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