golang如何把一段buffer的内容生成zip文件

栏目: Go · 发布时间: 5年前

内容简介:golang如何把一段buffer的内容生成zip文件在前面的例子中,我们介绍了如何把一个文件压缩成zip文件,包括如何把多个文件、目录一起压缩成一个zip文件。这里我们介绍如何把一段buffer的内容生成zip文件;例如我们从网络接收外端发送的数据,然后要把收到的数据压缩生成一个一个zip文件。

golang如何把一段buffer的内容生成zip文件

在前面的例子中,我们介绍了如何把一个文件压缩成zip文件,包括如何把多个文件、目录一起压缩成一个zip文件。

这里我们介绍如何把一段buffer的内容生成zip文件;例如我们从网络接收外端发送的数据,然后要把收到的数据压缩生成一个一个zip文件。

package main

import (
    "io"
    "log"
    "bytes"
    "io/ioutil"
    "archive/zip"
)

func main() {
    var err error
    var zipBuffer * bytes.Buffer = new(bytes.Buffer)
    var zipWriter * zip.Writer   = zip.NewWriter(zipBuffer)

    // Create entry in zip file
    var zipEntry io.Writer
    zipEntry, err = zipWriter.Create("a.txt")
    if err != nil {
        log.Fatal(err)
    }

    // Write content into zip entry
    _, err = zipEntry.Write([]byte("llllllllllll-1\n"))
    if err != nil {
        log.Fatal(err)
    }

    _, err = zipEntry.Write([]byte("llllllllllll-2\n"))
    if err != nil {
        log.Fatal(err)
    }

    // Make sure to check the error on Close.
    err = zipWriter.Close()
    if err != nil {
        log.Fatal(err)
    }

    // Write the zip file to the disk
    ioutil.WriteFile("a.zip", zipBuffer.Bytes(), 0644)    
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

学习Web设计

学习Web设计

罗宾斯 / 靳志伟 / 机械工业出版社 / 2009-1 / 65.00元

《学习Web设计(第3版)》从说明网站和网页是如何工作开始,逐步深入。当你看完《学习Web设计(第3版)》时,你将掌握使用优化的图像文件来创建多列CSS布局的技术,而且你将知道如何创建网页。这一版经过了彻底的修订,它可以教你如何根据现代设计的实践经验和专业标准来创建网站。《学习Web设计(第3版)》包含了一些练习,可以帮助你学习各种技术,还有一些小测验可以确保你及时掌握重要的概念。如果你对网站设计......一起来看看 《学习Web设计》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换