在 Golang 中,你可以使用标准库中的 compress 包来实现各种压缩算法。下面是一些常见的压缩算法和对应的示例代码:
- 使用 gzip 压缩数据:
package main
import (
"compress/gzip"
"io"
"os"
)
func main() {
inputFile, err := os.Open("input.txt")
if err != nil {
panic(err)
}
defer inputFile.Close()
outputFile, err := os.Create("output.gz")
if err != nil {
panic(err)
}
defer outputFile.Close()
gzipWriter := gzip.NewWriter(outputFile)
defer gzipWriter.Close()
io.Copy(gzipWriter, inputFile)
}
- 使用 zlib 压缩数据:
package main
import (
"compress/zlib"
"io"
"os"
)
func main() {
inputFile, err := os.Open("input.txt")
if err != nil {
panic(err)
}
defer inputFile.Close()
outputFile, err := os.Create("output.zlib")
if err != nil {
panic(err)
}
defer outputFile.Close()
zlibWriter := zlib.NewWriter(outputFile)
defer zlibWriter.Close()
io.Copy(zlibWriter, inputFile)
}
请注意,以上代码只是示例,并假设存在一个名为 “input.txt” 的输入文件。你需要根据实际需求进行适当修改和处理错误。
内容由零声教学AI助手提供,问题来源于学员提问




