Textdatei einlesen

Hallo,
ich hab schon wieder ein Problem, und zwar hab ich jetzt mein Programm so weit, dass es mir eine Textdatei einließt. Die Textdatei ist ein Proxybericht. Aus diesem Bericht soll jetzt immer ein bestimmter Bereich bzw. Absatz eingelesen werden und nach bestimmten Kriterien durchsucht werden.

Gruß

André

Wie liest du die Textdatei denn jetzt ein? (Code?)
Um welche Version von VB geht es? (Geht es überhaupt um VB?)

Gruß aus dem Norden
Reinhard Kraasch

Wie liest du die Textdatei denn jetzt ein? (Code?)
Um welche Version von VB geht es? (Geht es überhaupt um VB?)

Gruß aus dem Norden
Reinhard Kraasch

Hallo,

es handelt sich um VB6. Ich wähle die Datei mit CommonDialog aus und dann wird sie mit While eingelesen.

Private Sub Cmd_Auswertung_Click()
Dim I As Integer
Dim Intfilenummer As Integer
Dim strDateiName As String

On Error GoTo Fehlerbehandlung

strDateiName = Cmd.Filename
Intfilenummer = FreeFile

Open strDateiName For Input As #Intfilenummer

While Not EOF(Intfilenummer)
Line Input #Intfilenummer, StrInput

Wend

Close #Intfilenummer
MsgBox („Die Datei“ & strDateiName & „wurde gelesen.“)
Exit Sub

Fehlerbehandlung:
MsgBox ("Es ist folgender Fehler aufgetreten: " & Err.Description)
On Error GoTo 0
Close

End Sub

Ja, dann musst du halt prüfen, ob du deinen „bestimmten Bereich“ erreicht hast:

Do Until EOF(Intfilenummer)
 Line Input #Intfilenummer, strInput
 If strInput = "wasauchimmer" then 
 ' Bereichsanfang
 else if strInput = "etwasanderes" then
 ' Bereichsende
 end if
Loop

Was jetzt auch immer deinen Bereich auszeichnet (vielleicht ja auch eine bestimmte Zeilenzahl …) und was immer du mit den Zeilen innerhalb des Bereichs machen willst…

Gruß aus dem Norden
Reinhard Kraasch

Wenn die Datei nicht zu gross ist, kannst du sie auch komplett einlesen:

DIM s as string:dim alles as string
alles=""
...
line input #fh,s
alles=alles & s & vbcrlf

Dann kannst du darin schön mit den Stringfunktionen suchen (Instr, InstrRev), rumschneiden (left,mid,right,trim), anhand von Trennzeichen in ein Array packen (Split,join) usw.

Ralph

Oje,

die Datei ist viel zu groß denke ich, denn als Textdatei über 250 MB ist nicht so ohne oder?

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

wie ich das mitbekommen habe, dann schreibst du die aus einem textfile was 250 MB gross ist in eine textdatei. Ich denke mal das das nicht funktionieren kann, denn eine Textbox ( auf wenn multiline auf true ist) kann nur eine bestimmte anzahl von zeichen aufnehmen. sollte es aber doch gehen, so kannst du jedes einzelne zeichen aus der textbox auslesen mittels mid, oder am einfachsten ist die function instr, somit bekommst du den anfangspunkt und den endpunkt kannst du dir ja erreichen. Ich hoffe ich habe es richtig verstanden :smile:

LG Alex

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Deswegen sag ich ja, dass du Anfang und Ende feststellen und dann dazwischen deine Verarbeitungen (die ich nun inhaltlich nicht kenne!) machen sollst. Alles in einen String zu packen ist da sicher nicht die Lösung.

Gruß aus dem Norden
Reinhard Kraasch