Text aus Datei einlesen

Hallo!

Vieleicht kann mir jemand helfen…? :smile:))

Ich habe eine *.dat Datei wo mehrere Zeile untereinander stehen.(abgespeichert mit Print).Die will ich nun wieder auslesen und sie soll mir in einem Textfeld angezeigt werden.

Also:

Dateinummer holen
Open … For Input As …
Do Until EOF(DateiNr)
Input #DateiNr, Temp
txtAusgabe.text = Temp
AnzahlZeilen = AnzahlZeilen + 1
Loop

Wenn die Schleife durchläuft zeigt die „txtAusgabe“ jede einzelne Zeile an ( Einzelschritt = F8), aber im Textfeld wird dann immer nur die letzte Zeile angezeigt. Ich sehe schon nur noch Pixel , aber dafür den Fehler nicht.
Kann jemand schnell helfen ?
Danke im voraus
Marcus

Hallo,

Dateinummer holen
Open … For Input As …
Do Until EOF(DateiNr)

??? Nein, die holst Du mit:
ff = FreeFile

Input #DateiNr, Temp
txtAusgabe.text = Temp
AnzahlZeilen = AnzahlZeilen + 1
Loop

Wenn die Schleife durchläuft zeigt die „txtAusgabe“ jede
einzelne Zeile an ( Einzelschritt = F8), aber im Textfeld wird
dann immer nur die letzte Zeile angezeigt. Ich sehe schon nur
noch Pixel , aber dafür den Fehler nicht.

Ja, Du überschreibst die gelesenen Daten ja auch immer wieder. In Deinem Code müsste also stehen:

txtAusgabe.text = txtAusgabe.text + Temp

damit die neuen Daten immer dazu kommen.

Der Code ist aber langsam und insgesamt nicht schön, weil es so leicht zu Fehlern kommt. Besser ist:

Option Explicit

Private Sub Command1\_Click()
 Dim txt As String
 Dim na As String
 Dim ff As Integer
 Dim l As Long
 na = "DeineDatei"
 ff = FreeFile
 l = FileLen("DeineDatei")
 Open na For Binary As #ff
 txt = Input(l, #ff)
 Close #ff
End Sub

Gruß, Rainer

Danke !!!
Hallo Rainer !

Ich habs gewußt, es ist nur wieder ein kleiner Fehler, aber ich hab ja dich und das Problem löst sich innerhalb von Minuten. Zu meiner Schande muß ich noch gestehen, ich habe die Multiline und Scrollbar Eigenschaft vom Textfeld nicht beachtet, da ich sie auf dem Rechner schon mal eingestellt hatte, aber noch nicht auf dem Laptop. Und das Textfeld war genauso groß in der Breite wie der Text, so dass der Rest auch noch „verschluckt“ wurde.
Danke dir auch für den Code, hab ihn gleich probiert und läuft wunderbar.
Marcus

PS.: Hast du schon was mit der anderen Geschichte herausbekommen? (ein paar Tage vorher)

Hi Marcus,

PS.: Hast du schon was mit der anderen Geschichte
herausbekommen? (ein paar Tage vorher)

das mache ich nachher, einen fremden Code verstehen ist immer sehr schwer, besonders wenn er recht umfangreich ist. Es hat eben Jeder seinen eigenen Stil, der für andere schwer verständlich ist.

Gruß, Rainer