Zurück zum Gambas-Inhaltsverzeichnis.
Laden der Kompressions-Komponente
Um mit Gambas komprimierte Datei zu erstellen, brauchen Sie die Gambas-Komponente gb.compress. Sie können diese über die Gambas-Projektseite zuschalten. Dazu klicken Sie auf den Menüpunkt Projekt und dann weiter auf Eigenschaften. Von den dort angebotenen Reitern wählen Sie Komponenten. Suchen Sie aus der Liste gb.compress heraus und versehen Sie die Box davor mit einem Häkchen.
Siehe auch Komponenten
Beispielprogramm
Im folgenden Beispiel wird eine Textdatei erzeugt. Diese wird unkomprimiert abgespeichert. Dann wird sie komprimiert und gespeichert. Die komprimierte Datei wird geladen und ausgegeben. Dann wird die komprimierte Datei wieder entkomprimiert und mit PRINT im Direktfenster ausgegeben.
Sie brauchen:
- 1 Textarea
- 7 Befehlsfelder (Commandbuttons)
um das Programm in Gang zu bringen.
Der Quellcode:
' Gambas class file
PUBLIC DateiTxt AS String
PUBLIC DateiZip AS String
PUBLIC DateiUnzip AS String
PUBLIC SUB Form_Open()
Textarea1.Text = ""
ME.Text = "Kompression mit Gambas"
DateiTxt = System.Home & File.Separator & "ziptest.txt"
DateiZip = System.Home & File.Separator & "ziptest.txt.gz"
DateiUnzip = System.Home & File.Separator & "unziptest.txt"
END
PUBLIC SUB Button1_Click()
s AS String
sp AS String
n AS Integer
s = " Dies ist ein Test "
FOR n = 1 TO 10
s = s & Str(n)
sp = sp & s
NEXT
PRINT sp
TextArea1.Text = sp
END
PUBLIC SUB Button2_Click()
'Testdatei speichern
File.Save( DateiTxt, TextArea1.Text )
CATCH
IF ERROR THEN RETURN
END
PUBLIC SUB Button3_Click()
DIM Cp AS Compress
'DIM Cp AS NEW Compress
Cp = NEW Compress
Cp.Type = "zlib"
Cp.File ( DateiTxt, DateiZip, Cp.Max )
END
PUBLIC SUB Button4_Click()
DIM sLine AS String
sLine = File.Load(DateiZip)
'Die Datei muss existieren,
'sonst kann sie nicht geladen werden.
PRINT sLine
'TextArea1.Text = sline
END
PUBLIC SUB Button5_Click()
DIM UCp AS Uncompress
UCp = NEW Uncompress
UCp.Type = "zlib"
UCp.File ( DateiZip, DateiUnzip )
END
PUBLIC SUB Button6_Click()
DIM sLine AS String
sLine = File.Load(DateiUnzip)
'Die Datei muss existieren,
'sonst kann sie nicht geladen werden.
PRINT sLine
'TextArea1.Text = sline
END
PUBLIC SUB Button7_Click()
ME.Close
END