This example shows you how to directly write gzip-compressed data using Go’s gzip
library.
First, open the file and use gzip.NewWriter()
to create a new io.Writer
on it:
// Open file f, _ := os.Create("test.txt.gz") defer f.Close() // Create gzip writer gzWriter := gzip.NewWriter(f)
Now you can gzWriter.Write()
. Don’t forget to gzWriter.Close()
content := "Hello World!" gzWriter.Write([]byte(content)) gzWriter.Close()
Full example:
package main import ( "compress/gzip" "os" ) func main() { // Open file f, _ := os.Create("test.txt.gz") defer f.Close() // Create gzip writer gzWriter := gzip.NewWriter(f) // Write content and close content := "Hello World!" gzWriter.Write([]byte(content)) gzWriter.Close() }
You can use zcat test.txt.gz
to see that the content has been written to the file correctly.