Golang語言情懷-第46期 Go 語言標準庫翻譯 compress/bzip2

2021-02-18 Golang語言情懷

原文:

Overview ▾

Package bzip2 implements bzip2 decompression.

Index ▾Package files

bit_reader.go bzip2.go huffman.go move_to_front.go

func NewReader

func NewReader(r io.Reader) io.Reader

NewReader returns an io.Reader which decompresses bzip2 data from r. If r does not also implement io.ByteReader, the decompressor may read more data than necessary from r.

type StructuralError

A StructuralError is returned when the bzip2 data is found to be syntactically invalid.

type StructuralError string

func (StructuralError) Error

func (s StructuralError) Error() string

翻譯:

import "compress/bzip2"

bzip2包實現bzip2的解壓縮。

Index返回首頁

type StructuralError string

當bzip2數據的語法不合法時,會返回本類型錯誤。

func (StructuralError) Error

func (s StructuralError) Error() string

func NewReader

func NewReader(r io.Reader) io.Reader

NewReader返回一個從r讀取bzip2壓縮數據並解壓縮後返回給調用者的io.Reader。

功能說明:.bz2文件的壓縮程序。

   語  法:bzip2 [-cdfhkLstvVz][--repetitive-best][--repetitive-fast][- 壓縮等級][要壓縮的文件]

   補充說明:bzip2採用新的壓縮演算法,壓縮效果比傳統的LZ77/LZ78壓縮演算法來得好。若沒有加上任何參數,bzip2壓縮完文件後會產生.bz2的壓縮文件,並刪除原始的文件。

   參  數:
 
   -c或--stdout  將壓縮與解壓縮的結果送到標準輸出。 
 
   -d或--decompress  執行解壓縮。 
 
   -f或--force  bzip2在壓縮或解壓縮時,若輸出文件與現有文件同名,預設不會覆蓋現有文件。若要覆蓋,請使用此參數。 
 
   -h或--help  顯示幫助。 
 
   -k或--keep  bzip2在壓縮或解壓縮後,會刪除原始的文件。若要保留原始文件,請使用此參數。 
 
   -s或--small  降低程序執行時內存的使用量。 
 
   -t或--test  測試.bz2壓縮文件的完整性。 
 
   -v或--verbose  壓縮或解壓縮文件時,顯示詳細的信息。 
 
   -z或--compress  強制執行壓縮。 
 
   -L,--license,
 
   -V或--version  顯示版本信息。 
 
   --repetitive-best  若文件中有重複出現的資料時,可利用此參數提高壓縮效果。 
 
   --repetitive-fast  若文件中有重複出現的資料時,可利用此參數加快執行速度。 

   -壓縮等級  壓縮時的區塊大小。

參考資料:

Go語言中文文檔

http://www.golang.ltd/

Go語言官方文檔

https://golang.google.cn/

Golang語言情懷

ID:wwwGolangLtd

 www.Golang.Ltd

遊戲伺服器架構丨分布式技術丨大數據丨Go語言學習

相關焦點

  • Golang語言情懷-第49期 Go 語言標準庫翻譯 compress/lzw
    import "compress/lzw"lzw包實現了Lempel-Ziv-Welch數據壓縮格式,這是一種T. A.
  • Go語言愛好者周刊:第 67 期 — Go1.16 相關功能基本完成了
    這裡記錄每周值得分享的 Go 語言相關內容,周日發布。本周刊開源(GitHub:polaris1119/golangweekly[1]),歡迎投稿,推薦或自薦文章/軟體/資源等,請提交 issue[2] 。
  • Go語言愛好者周刊:第 77 期 — 這道題目測答對的人不多
    這裡記錄每周值得分享的 Go 語言相關內容,周日發布。本周刊開源(GitHub:polaris1119/golangweekly[1]),歡迎投稿,推薦或自薦文章/軟體/資源等,請提交 issue[2] 。
  • Go語言愛好者周刊:第 82 期 — 情人節快樂
    這裡記錄每周值得分享的 Go 語言相關內容,周日發布。本周刊開源(GitHub:polaris1119/golangweekly[1]),歡迎投稿,推薦或自薦文章/軟體/資源等,請提交 issue[2] 。
  • Go語言愛好者周刊:第 80 期 — 認真思考下為什麼?
    這裡記錄每周值得分享的 Go 語言相關內容,周日發布。本周刊開源(GitHub:polaris1119/golangweekly[1]),歡迎投稿,推薦或自薦文章/軟體/資源等,請提交 issue[2] 。
  • Go語言愛好者周刊:第 12 期
    優秀的英文文章,我們的 GCTT 組織會進行翻譯。題圖:來源 golangweekly.com刊首語 Go 有語言公認的一個很好的工具是 gofmt,它讓不同人的代碼寫出來風格差不多,這也極大的減少了團隊對代碼風格的要求。最近 Uber 公開的一份 ,受到極大的歡迎。
  • Go語言愛好者周刊:第 64 期 — goup 這個工具了解下
    這裡記錄每周值得分享的 Go 語言相關內容,周日發布。本周刊開源(GitHub:polaris1119/golangweekly[1]),歡迎投稿,推薦或自薦文章/軟體/資源等,請提交 issue[2] 。
  • Go語言(Golang)環境搭建詳解
    根據自己的作業系統選擇後,就可以下載開發工具包了,Go語言的官方下載地址是 https://golang.google.cn/dl/ 可以打開選擇版本下載。Linux下安裝我們以Ubuntu 64位為例進行演示,CentOS等其他Linux發行版大同小異。
  • Golang語言標準庫 sync 包的 Once 怎麼使用?
    通過閱讀示例代碼,可以發現代碼中定義了兩個函數類型的變量 func1 和 func2,分別作為參數傳遞給兩次調用的 Do 方法,執行代碼,結果只列印第一次調用 Do 方法傳入的 func1 參數的值。閱讀代碼,我們定義了兩個函數類型的變量 func1 和 func2,其中 func1 的函數體內,調用 Do 方法並將 func2 作為參數傳遞給它,最後調用給定 func1 作為參數的 Do 方法,運行結果是導致程序死鎖。
  • Go 語言 Web 框架 Echo 系列:定製篇2 — 自定義 Validator,進行輸入校驗
    然而,你可以很方便的集成第三方的數據校驗庫。跟 Binder 類似,Echo 提供了一個 Validator 接口,方便將第三方數據校驗庫集成進來。在 Awesome-Go 上可以找到第三方數據校驗庫:https://github.com/avelino/awesome-go#validation。本文我們使用最流行的 https://github.com/go-playground/validator 庫來講解。
  • GO語言入門(第一個go程序)
    作為一門具有明確編碼規範的語言,它要求可以採用不同的編譯器如 gc 和 gccgo(第 2.1 節)進行編譯工作,這對語言本身擁有更好的編碼規範起到很大幫助。LALR 是 Go 語言的語法標準,你也可以在 src/cmd/internal/gc/go.y 中查看到,這種語法標準在編譯時不需要符號表來協助解析。
  • Golang 語言標準庫 bytes 包怎麼使用?
    Buffer 的同時初始化數據,其中 2 和 3 的區別是創建 Buffer 時,用於初始化的數據類型不同。05 總結本文介紹了 Golang 語言標準庫的 bytes 包的函數和兩個結構,Buffer 和 Reader,以及它們各自的方法。
  • 「語言實踐」Go語言文檔自動化之go-swagger
    1 go-swagger依賴包獲取go-swagger中在github的倉庫下的依賴包如下,主要包含可以對語法進行校驗的govalidator,文檔化的標準specification的go-openapi,還有網絡處理的golang.org官網旗下的net和text。
  • Go語言愛好者周刊:第 23 期
    資訊 1、Prometheus 2.15.0 發布了,Prometheus 是一個 Go 語言開發的開源的服務監控系統和時間序列資料庫。該版本引入了一些新特性,比如記錄其他組件、增強功能和修復 bug,這些都是為了提高可用性。
  • [GO語言基礎] 一.為什麼我要學習Golang以及GO語言入門普及
    五.Golang發展史1.Go語言開發團隊2.Go語言誕生歷程3.Go語言特點六.Windows系統Golang環境配置1.開發工具2.安裝VSCode‍七.Golang語言快速入門庫程序裡有我想要的一切,總體實現較為完善。學習體驗也十分順暢,不得不說,Go 是一種經過精心設計的實用性語言。舉個例子:一旦你知悉了 Go 的語法,就能將其他語言中慣用法延續到 Go 中。只要你學會一些 Go,就可以相對輕易地推測 Go 語言的其他特性。憑藉一些來自其他語言的知識,我能夠閱讀並理解 Go 代碼,而不需要過多的搜索(Google)。
  • 解讀 Go 語言的 2019:Go 語言不行了嗎?
    圖 4:Google Trends 之 Go 語言熱度(2019 年 12 月)從我的觀察來看,Go 語言已經過了第二波快速推廣期,並且進入了穩定發展期,起碼在國內是這樣。已經在使用 Go 語言的技術團隊逐漸開始專注於埋頭寫代碼,而剛開始使用 Go 語言的團隊也沒有進行大肆的宣傳。Go 語言已經悄悄地變成了我們的家常便飯。
  • 好書推薦|Go語言實戰(附PDF下載)
    本書目錄 第1章 關於Go語言的介紹 11.1 用Go解決現代編程難題 21.1.1 開發速度 21.1.2 並發 31.1.3Go語言的類型系統 51.1.4 內存管理 71.2 你好,Go71.3 小結 8
  • Golang 語言的值驗證庫 Validator 怎麼使用?
    安裝:使用 go get:go get github.com/go-playground/validator/v10然後將 Validator 包導入到代碼中:import "github.com/go-playground/validator
  • 解讀Go語言的2020:變革前夜
    Go 語言的大多數標準命令都得到了不同程度的改進以更加適配 go modules,包括一些標記(flag)的調整和一些行為上的優化。比如,go get 命令在默認情況下不再會去更新非兼容版本的依賴庫。不兼容的依賴庫更新常常會讓我們很惱火,但現在不會再出現這種情況了。
  • Go語言中 Unsafe 的用法
    >Go 1 的手冊清楚地說明(https://golang.org/doc/go1compat#expectations),如果他們改變了實現方式,使用 unsafe 包可能會破壞你的代碼。我們保留修改實現方法的權利,這也許會破壞此類程序我們需要記住的是,在 Go 1 中,內部實現可能會發生變化,並且我們也許會遇到類似 issues   this ticket in Github (https://github.com/golang/go/issues/16769)   中所見的問題,兩個 Go 版本之間的行為有略微的改變。