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)    
}

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

查看所有标签

猜你喜欢:

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

莱昂氏UNIX源代码分析

莱昂氏UNIX源代码分析

(澳)John Lions / 尤晋元 / 机械工业出版社 / 2000-7-1 / 49.00

本书由上、下两篇组成。上篇为UNIX版本6的源代码,下篇是莱昂先生对UNIX操作系统版本6源代码的详细分析。本书语言简洁、透彻,曾作为未公开出版物广泛流传了二十多年,是一部杰出经典之作。本书适合UNIX操作系统编程人员、大专院校师生学习参考使用。一起来看看 《莱昂氏UNIX源代码分析》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

URL 编码/解码
URL 编码/解码

URL 编码/解码