Visual Basic .NET Language
Leggere file di testo compresso al volo
Ricerca…
Lettura di file di testo .gz riga dopo riga
Questa classe apre un file .gz (il solito formato di file di registro compresso) e restituirà una riga ad ogni chiamata di .NextLine()
Non esiste un utilizzo della memoria per la decompressione temporanea, molto utile per file di grandi dimensioni.
Imports System.IO
Class logread_gz
Private ptr As FileStream
Private UnGZPtr As Compression.GZipStream
Private line_ptr As StreamReader
Private spath As String
Sub New(full_filename As String)
spath = full_filename
End Sub
Sub Open()
Me.ptr = File.OpenRead(spath)
Me.UnGZPtr = New Compression.GZipStream(ptr, Compression.CompressionMode.Decompress)
Me.line_ptr = New StreamReader(UnGZPtr)
End Sub()
Function NextLine() As String
'will return Nothing if EOF
Return Me.line_ptr.ReadLine()
End Function
Sub Close()
Me.line_ptr.Close()
Me.line_ptr.Dispose()
Me.UnGZPtr.Close()
Me.UnGZPtr.Dispose()
Me.ptr.Close()
Me.ptr.Dispose()
End Sub
End Class
Nota: non esiste il failsafe, per scopi di leggibilità.
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow