This commit is contained in:
simonzhangsz committed 2023-08-24 23:21:15 +08:00
1 parent 40705d8309
commit 07804d627b
2 files changed
+50 -41

No files matched your search

+39
View File
@@ -1,6 +1,7 @@
package global
import (
"archive/zip"
"bytes"
"crypto/md5"
"encoding/hex"
@@ -477,3 +478,41 @@ func ToMap(in interface{}, tagName string) (map[string]interface{}, error) {
}
return out, nil
}
func ZipOneFile(srcFile, dstZip string, pathFlag bool) error {
zipFile, err := os.Create(dstZip)
if err != nil {
return err
}
defer zipFile.Close()
zipWriter := zip.NewWriter(zipFile)
defer zipWriter.Close()
fileToCompress, err := os.Open(srcFile)
if err != nil {
return err
}
defer fileToCompress.Close()
var fileInZip io.Writer
if pathFlag {
fileInZip, err = zipWriter.Create(srcFile)
if err != nil {
return err
}
} else {
// 获取文件的基本名称
fileName := filepath.Base(fileToCompress.Name())
fileInZip, err = zipWriter.Create(fileName)
if err != nil {
return err
}
}
_, err = io.Copy(fileInZip, fileToCompress)
if err != nil {
return err
}
return nil
}