怎么在Golang中使用zlib對字符串進(jìn)行壓縮和解壓縮?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
創(chuàng)新互聯(lián)公司是專業(yè)的杞縣網(wǎng)站建設(shè)公司,杞縣接單;提供成都做網(wǎng)站、成都網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行杞縣網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊,希望更多企業(yè)前來合作!
zlib.NewWriter() 只能傳遞 []byte類型數(shù)據(jù). NewWriterLevel 可以傳遞壓縮的等級.
package main import ( "bytes" "compress/zlib" "fmt" "io" ) func main() { var in bytes.Buffer b := []byte(`xiorui.cc`) w := zlib.NewWriter(&in) w.Write(b) w.Close() var out bytes.Buffer r, _ := zlib.NewReader(&in) io.Copy(&out, r) fmt.Println(out.String()) }
庫包地址
import "compress/zlib"
寫入
func NewWriter func NewWriter(w io.Writer) *Writer
讀取壓縮的數(shù)據(jù)
func NewReader func NewReader(r io.Reader) (io.ReadCloser, error)
設(shè)置壓縮等級,并壓縮數(shù)據(jù)
func NewWriterLevel(w io.Writer, level int) (io.WriteCloser, os.Error)
下面是幾個級別.
const ( NoCompression = 0 BestSpeed = 1 BestCompression = 9 DefaultCompression = -1 ) const ( NoCompression = flate.NoCompression BestSpeed = flate.BestSpeed BestCompression = flate.BestCompression DefaultCompression = flate.DefaultCompression )
寫入數(shù)據(jù)
func (*Writer) Write func (z *Writer) Write(p []byte) (n int, err error)
關(guān)閉
func (*Writer) Close func (z *Writer) Close() error
看完上述內(nèi)容,你們掌握怎么在Golang中使用zlib對字符串進(jìn)行壓縮和解壓縮的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!