Zum Lesen einer Datei den StreamReader benutzen

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Lord C.

    Zum Lesen einer Datei den StreamReader benutzen

    Ich habe fast schon meine komplette Klausuraufgaben gelöst. (*Freu)

    Bei der folgendne Teilaufgabe komme ich aber leider nicht weiter und würde mich freuen, wenn mir jemand helfen kann.

    Ich soll also mein Formular mit einem Menüpunkt mnuÖffnen erstellen, die ersten Teilaufgaben habe ich gemacht. Ich habe den folgenden Code zum Öffnen geschrieben.
    Bei den folgenden Teilaufgaben bin ich mir nicht sicher:
    - Nun deklarieren und öffnen sie einFileStream-Objekt mit der angegeben Datei zum Lesen
    - Das Objekt zum Lesen einer Datei ist Streamreader, deklarieren sie es mit dem Namen sr
    - mit der Methode sr.readtoend() füllen sie nun die Text-Eigenschaften von txtText

    Ok hier mal mein Anfang:



    VB.NET-Quellcode

    1. Private Sub mnuNeu_Click(ByVal sender As Object, ByVal e As EventArgs) Handles mnuNeu.Click
    2. If frmEditor.modified Then
    3. Dim s As String = "Der Inhalt wurde geändert." & vbCrLf _
    4. & "Wollen Sie die Datei schließen ohne zu speichern?"
    5. If MessageBox.Show(s, Anwendungstitel, _
    6. MessageBoxButtons.YesNo, _
    7. MessageBoxIcon.Exclamation, _
    8. MessageBoxDefaultButton.Button2) _
    9. = Windows.Forms.DialogResult.OK Then
    10. Exit Sub
    11. End If
    12. End If
    13. If dlgDateiÖffnen.ShowDialog = Windows.Forms.DialogResult.OK Then
    14. Datei = dlgDateiÖffnen.FileName
    15. If Datei.EndsWith(".txt") Then
    16. Try
    17. frmEditor.loadfile(Datei, RichTextBoxStreamType.RichText)
    18. Catch Ausnahme As Exception
    19. Dim s = "Die Datei konnte nicht im text-Format geladen werden!"
    20. MessageBox.Show(s, Anwendungstitel, _
    21. MessageBoxButtons.OK, MessageBoxIcon.Error)
    22. frmEditor.loadfile(Datei, RichTextBoxStreamType.PlainText)
    23. End Try
    24. Else
    25. frmEditor.loadfile(Datei, RichTextBoxStreamType.PlainText)
    26. End If
    27. End If
    28. frmEditor.clear()
    29. frmEditor.modified = False
    30. Datei = ""
    31. Text = Anwendungstitel() & "-" & "Unbenannt"
    32. Dim sr As IO.FileStream
    Also so ausm Kopf getippelt würd ich das eher so machen:

    VB.NET-Quellcode

    1. Imports System.IO
    2. Public Class TestForm
    3. Private Sub mnuÖffnen_Click(sender As System.Object, e As System.EventArgs) Handles mnuÖffnen.Click
    4. Dim ofd As New OpenFileDialog
    5. ofd.Multiselect = False
    6. ofd.Filter = "Textdateien (*.txt)|*.txt"
    7. If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then
    8. Using sr As New StreamReader(ofd.FileName)
    9. txtText.Text = sr.ReadToEnd
    10. End Using
    11. End If
    12. End Sub
    13. End Class


    EDIT: Geändert weil ich jetzt erst gecheckt hab das txtText wohl ne Textbox sein soll
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D

    Runner schrieb:

    Nun deklarieren und öffnen sie einFileStream-Objekt mit der angegeben Datei zum Lesen
    Ich kaufe meine Brötchen auch in Madrid.
    Ist das die exakte Aufgabenstellung? Ansonsten nimm einen Einzeiler mit den Variablennamen von @MemoAnMichSelbst .

    VB.NET-Quellcode

    1. Dim txt = IO.File.ReadAllText(ofd.FileName)
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @Rod oben steht er soll nen Streamreader (SR) benutzen. Genauer sogar beschrieben "ReadToEnd". Also mit IO.File.ReadAllText wär er nicht bedient.
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Ich denke da hat sich der Gute nicht schön ausgedrückt und meinte den StreamReader...
    Hiermit ist es ja genau definiert "Das Objekt zum Lesen einer Datei ist Streamreader, deklarieren sie es mit dem Namen sr"
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D