package main import ( "encoding/hex" "fmt" "io" "git.hatter.ink/hatter/go-afero-encfs/encfs" ) func main() { key := []byte{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, } encFs := encfs.NewEncFs(key) func() { encFile, err := encFs.Create("test") if err != nil { fmt.Println(err) return } defer encFile.Close() encFile.Write([]byte("hello world")) encFile.Write([]byte("XXXXXXXXXXXXXXXXXXXXXXXXXXXXX")) encFile.WriteAt([]byte("TEST"), 10) encFile.Write([]byte("------")) encFile.Write([]byte("Z")) encFile.Write([]byte("---------------------------------------")) encFile.Write([]byte("Z")) }() func() { encFile, err := encFs.Open("test") if err != nil { fmt.Println(err) return } rr, err := io.ReadAll(encFile) fmt.Println(hex.EncodeToString(rr)) fmt.Println(string(rr), err) buff := make([]byte, 5) readLen, err := encFile.ReadAt(buff, 3) fmt.Println(readLen, err) fmt.Println(string(buff)) readLen, err = encFile.Read(buff) fmt.Println(readLen, err) fmt.Println(string(buff)) }() encFs.Remove("test") }