Update directories sample to use WalkDir

Since Go 1.16, WalkDir is the recommended alternative over Walk
This commit is contained in:
Eli Bendersky
2023-10-28 08:22:37 -07:00
parent 41dd5d97b1
commit 8a64f89840
3 changed files with 16 additions and 14 deletions

View File

@@ -5,6 +5,7 @@ package main
import (
"fmt"
"io/fs"
"os"
"path/filepath"
)
@@ -76,19 +77,19 @@ func main() {
check(err)
// We can also visit a directory *recursively*,
// including all its sub-directories. `Walk` accepts
// including all its sub-directories. `WalkDir` accepts
// a callback function to handle every file or
// directory visited.
fmt.Println("Visiting subdir")
err = filepath.Walk("subdir", visit)
err = filepath.WalkDir("subdir", visit)
}
// `visit` is called for every file or directory found
// recursively by `filepath.Walk`.
func visit(p string, info os.FileInfo, err error) error {
// recursively by `filepath.WalkDir`.
func visit(path string, d fs.DirEntry, err error) error {
if err != nil {
return err
}
fmt.Println(" ", p, info.IsDir())
fmt.Println(" ", path, d.IsDir())
return nil
}

View File

@@ -1,2 +1,2 @@
d2eaefdc6dbeaf130e4824403baa948b5845c0ec
cICbVSX51zI
21e35905e45d7b391823ea761d69199e3712d92c
ORNj2BPrLQr