用法1:var AppFs = afero.NewOsFs() 之后,把AppFs当os使用,
os.Open(“/tmp/foo”)
则afero用法为:
AppFs.Open(“/tmp/foo”)
package main
import (
"fmt"
"github.com/spf13/afero"
)
func main() {
var AppFs = afero.NewOsFs()
file, _ := AppFs.Open("/home/leon")
fileNames, _ := file.Readdirnames(-1)
for _, name := range fileNames {
fmt.Println(name)
}
}
工具用法:
Calling utilities directly
fs := new(afero.MemMapFs)
f, err := afero.TempFile(fs,"", "ioutil-test")
Calling via Afero,下面这种常见:
fs := afero.NewMemMapFs()
afs := &afero.Afero{Fs: fs}
f, err := afs.TempFile("", "ioutil-test")
package main
import (
"fmt"
"github.com/spf13/afero"
)
func main() {
fs := afero.NewOsFs()
afs := &afero.Afero{Fs: fs}
content, err := afs.ReadFile("/home/leon/a.txt")
if err != nil {
fmt.Println("err", err)
}
fmt.Printf("%#v", string(content))
}