vinegar/vinegarUtil/files.go
2023-07-31 16:57:21 -04:00

43 lines
744 B
Go

package vinegarUtil
import (
"bytes"
gzip2 "compress/gzip"
"io/ioutil"
"os"
)
func GetDiskContent(filePath string) (*[]byte, error) {
_, ferr := os.Stat(filePath)
if os.IsNotExist(ferr) {
return nil, ferr
} else {
f, err := os.OpenFile(filePath, os.O_RDONLY, 0755)
if err != nil {
return nil, err
}
defer f.Close()
content, err := ioutil.ReadAll(f)
if err != nil {
return nil, err
}
return &content, nil
}
}
func GZipBytes(uncompressed *[]byte) (*[]byte, error) {
buff := bytes.Buffer{}
gzip := gzip2.NewWriter(&buff)
_, err := gzip.Write(*uncompressed)
if err != nil {
return nil, err
}
err = gzip.Flush()
if err != nil {
return nil, err
}
compressed := buff.Bytes()
return &compressed, nil
}