Golang笔记

GoLang 解压缩zip 文件的例子

Golang 使用标准模块archive/zip 解压缩zip 文件的例子

package main

import (
    "archive/zip"
    "fmt"
    "io"
    "log"
    "os"
)

const (
    LOGFILEPATH = "./zip.log"
)

func main() {
    logfile, err := os.OpenFile(LOGFILEPATH, os.O_CREATE|os.O_RDWR, 0)
    if err != nil {
        fmt.Println(err.Error())
        return
    }
    defer logfile.Close()
    logger := log.New(logfile, "\r\n", log.Ldate|log.Ltime|log.Llongfile)
    if logger == nil {
        fmt.Println("logger init error")
    }
    r, err := zip.OpenReader("./file.zip")
    if err != nil {
        logger.Fatal(err)
    }
    defer r.Close()
    for _, f := range r.File {
        fmt.Println("FileName : ", f.Name)
        rc, err := f.Open()
        if err != nil {
            logger.Fatal(err)
        }
        _, err = io.CopyN(os.Stdout, rc, 68) //打印文件内容
        if err != nil {
            if err != io.EOF {
                logger.Fatal(err)
            }
        }
    }
}
本文网址: https://golangnote.com/topic/31.html (转载注明出处)
关于GolangNote:记录在工作中使用golang 遇到、面临的相关问题及解决方法。如果你在这里获得一些知识或信息,解决你的编程问题,请考虑捐赠给不幸的人或者你喜欢的慈善机构,除捐赠外,种植树木、志愿服务或减少排碳的行为也很有益处。如果你有任何问题可以在下面 留言
Be the first to comment!
Captcha image
Relative Articles