Did you try with the example I provided on your GH issue?
https://play.golang.org/p/u6eAphPRrk

On Wed, Feb 15, 2017 at 10:14 AM Mukund 8kmiles <muk...@8kmiles.com> wrote:

> Hi ,
>
> Has anyone tried compressing > ~2.5 GB of data using golang.
>
> The following function compresses files. Files less than ~2.5 GB are
> successful with any data loss. Files greater than ~2.5 are getting
> compressed but the API trims  section of the data at the last
>
> Any inputs are welcome!!!
>
> func compressFile(filename string, outputFile string) {
>
> fmt.Println("Compresssng file " + filename)
>
> if filename == "" {
> os.Exit(1)
> }
>
> rawfile, err := os.Open(filename)
>
> if err != nil {
> fmt.Println(err)
> os.Exit(1)
> }
> defer rawfile.Close()
>
> // calculate the buffer size for rawfile
> info, _ := rawfile.Stat()
>
> var size int64 = info.Size()
> rawbytes := make([]byte, size)
>
> // read rawfile content into buffer
> buffer := bufio.NewReader(rawfile)
> _, err = buffer.Read(rawbytes)
>
> if err != nil {
> fmt.Println(err)
> os.Exit(1)
> }
>
> var buf bytes.Buffer
> writer := gzip.NewWriter(&buf)
> writer.Write(rawbytes)
> writer.Close()
>
> err = ioutil.WriteFile(outputFile, buf.Bytes(), info.Mode())
>
> if err != nil {
> fmt.Println(err)
> os.Exit(1)
> }
> fmt.Println("compresssng file " + filename + " complete")
> }
>
> --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to