Datei lesen und in Groupbox ausgeben

esdesign

Grafikdesigner
So.... mal wieder bin ich es!

Wahrscheinlich ist auch das eine ziemlich einfache Frage, aber gefunden habe ich bisher noch nichts.

Ich habe einen Button der eine Datei beim klicken öffnen soll:

Code:
Private Sub Button41_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button41.Click
System.IO.File.OpenRead("FILE")
End Sub

Nun möchte ich das in der Groupbox3 (beim klicken) ausgeben. Beim klicken soll sich die Ansicht auch aktuallisieren.

Danke schonmal!

Eike
 

waswiewo

Erfahrenes Mitglied
Hi, evtl kannst du damit was anfangen. Hab es aber nur so hingeschrieben, nicht getestet!

Code:
Dim ar As New ArrayList()
Dim pfad as string = Application.StartupPath & "Datei"

If File.Exists(pfad) Then

    Dim sr As New StreamReader(pfad)
    Dim data As String = sr.ReadToEnd()
    sr.Close()

    If Not String.IsNullOrEmpty(data) Then

        ar.AddRange(data.Split(New String() {vbCr & vbLf}, StringSplitOptions.None))

    End If

End If

For i = 0 To ar.Count - 1

    Groupbox3.Text = Groupbox3.Text & ar(i)  ' oder meinst du nicht doch eher 'ne RichTextBox o.ä.?

Next

EDIT: Evtl vor all dem noch den Inhalt der Groupbox3 leeren ( Groupbox3.Text = "" ).
 
Zuletzt bearbeitet:

DrSoong

Iss was, Doc!
So wie du das geschrieben hast, öffnest du zwar einen Stream zum Lesen einer Datei, sonst aber nichts. du müsstest schon irgendwie den Lesevorgang selber angeben, außerdem muss VB ja wissen, wohin die Daten sollen (Variable, Steuerelement, ...).

Wenn du eine Textdatei hast, kannst du die Datei mit ReadAllText ganz einfach einlesen:
Visual Basic:
Dateiinhalt = System.IO.File.ReadAllText("C:\datei.txt", System.Text.Encoding.Default)
#

Die Ausgabe in eine Groupbox irritiert mich jetzt etwas, normalerweise hast du ein Label oder eine Textbox, in der du Text ausgibst. Bei der Groupbox kannst du ja nur die eine Zeile ändern, wenn du hier eine Datei mit mehreren Zeilen hast und nur die letzt ausgeben willst, musst du die Daten noch etwas bearbeiten (z.B. mit Split()).


Der Doc!
 

esdesign

Grafikdesigner
Hallo....

da habe ich mich wahrscheinlich falsch ausgedrückt. Ich würde das gerne in einem Label ausgeben. Eine Textbox geht aber auch!

Werde Deines mal ausprobieren******
 
Zuletzt bearbeitet:

esdesign

Grafikdesigner
Danke sehr! Hat funktioniert. Habe es in einer Textbox ausgegeben, da man ja in einer Groupbox nicht scrollen kann :(

Eike
 

Neue Beiträge