Go壓縮檔案

2022-01-20 00:54:54 字數 1543 閱讀 7271

首先是恭喜ig獲得s8全球總決賽冠軍,ig牛逼。但咱是一介草民,狂歡後,還是得老老實實的開始敲**。最近做了乙個給底層韌體壓縮加密的工具,是使用c#做的,已經提交出去可以正常使用的。既然在學習go語言,那我很慣性的想到,能不能使用go來做這塊,咱介面還是使用winform,壓縮這一塊可以使用go來做,c#來呼叫go編譯的exe檔案就好了。有人可能會說,幹嘛這麼麻煩,c#就能完成的事情,為什麼還要用go。哼哼,學習當中,不要問我為什麼,老總也不是咱表哥。接下來就貼上咱的成果:

壓縮多檔案:

package main

import(

"fmt"

"archive/zip"

"bytes"

"os"

)func main(),

, }for _, file := range files

_, err = f.write(byte(file.body))

if err != nil

} err := w.close()

if err != nil

f, err := os.openfile("file.zip", os.o_create | os.o_wronly, 0666)

if err != nil

buf.writeto(f)

}

解壓**:

func unzip(archive, target string) error

if err := os.mkdirall(target, 0755); err != nil

for _, file := range reader.file

filereader, err := file.open()

if err != nil

defer filereader.close()

//targetfile, err := os.openfile(path, os.o_wronly | os.o_trunc, file.mode())

targetfile, err := os.create(path)

fmt.println(path)

if err != nil

defer targetfile.close()

if _, err := io.copy(targetfile, filereader); err != nil

} return nil

}func wozip(),

, }for _, file := range files

_, err = f.write(byte(file.body))

if err != nil

} err := w.close()

if err != nil

f, err := os.openfile("file.zip", os.o_create | os.o_wronly, 0666)

if err != nil

buf.writeto(f)

}

突然發現好像不支援壓縮加密,這個得再學習一下了。

go語言zip壓縮檔案

博海無涯。上 func zipfiles filename string,files string,oldform,newform string error defer newzipfile.close zipwriter zip.newwriter newzipfile defer zipwrit...

怎樣壓縮檔案 如何給壓縮檔案加密

我們生活 工作中,會經常遇到壓縮檔案 給檔案加密的事情。有時候,是單純不想讓別人看到 有時候,是提供 但不能共享,用來獲取收益等等。那麼怎麼將乙個檔案壓縮,或者乙個資料夾壓縮尼?同時又怎麼給這個壓縮檔案加密尼?下面大家和小編一起看一下吧。壓縮檔案 如圖。找到需要壓縮的檔案 資料夾,右擊檔案,點選新增...

C 壓縮檔案

首先新增system.io.com pression 注意deflatestream類不能用來壓縮大小超過4gb的檔案。gzipstream同樣不能用來壓縮大小超過4gb的檔案。public void compressfile string srcfile,string dstfile if fil...