Domino 9 und frühere Versionen > ND6: Entwicklung

Suche Weg die letzte Zeile einer Datei zu finden

<< < (2/2)

eknori:
Sub Click(Source As Button)
   Dim izFile As Integer
   Dim fileName As String
   Dim fileContents As String
   Dim arr As Variant
   izFile% = Freefile()
   fileName = "c:\tms.log"
   Open fileName$ For Input As izFile
   fileContents = Input$(Lof(izFile), izFile)
   arr = Split(FileContents,Chr$(13))
   Msgbox arr(Ubound(arr))
End Sub

mal so als Schnellschuss

flaite:
Ich würd vor dem Msgbox arr(Ubound(arr)) noch ein Close ranhängen.
[...]
Close
Msgbox arr(Ubound(arr))
end sub

--- Zitat ---If you omit fileNumber, Close closes all open files.

--- Ende Zitat ---
Offene Filehandles können nämlich wirklich für Ärger sorgen.

Ich würd sogar einen Errorhandler einbauen und da noch einmal ein extra Close.

eknori:
sag ich doch, ist ein Schnellschuss und das Close habe ich schlichtweg vergessen.
Man kann die Datei auch as binary öffnen und mit Seek den EOF Pointer suchen. Dann muss man nur noch reverse von dieser Position aus bis zum Auftauchen des ersten CRLF suchen und hat den String der letzten Zeile; allerdings in umgekehrter Reihenfolge der Zeichen ...

Kadlec:
Also, mein Problem liegt hauptsächlich an dem aufsplitten der Datei.
Beim importieren bzw. zeilenweise einlesen wird jede Zeile korrekt abgearbeitet. Mit arr = Split(FileContents,Chr$(13)) wird aber die Datei nicht gesplittet, das Ende der Zeile wird also nicht mit Chr(13) abgegrenzt.
Hab auch schon Chr(10) & Chr(13) und einiges mehr versucht.

Merkwürdig!

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln