用go语言遍历文件夹

python遍历文件夹很方便,在go的世界里,我也需要这样的功能。找了找文档,里面有这个功能(具体参考这里:http://golang.org/pkg/path/filepath/ )……

好,不废话了,我也想早点睡,直接上代码。

代码如下: 

/*
File      : getFilelist.go
Author    : Mike
E-Mail    : Mike_Zhang@live.com
*/
package main
import (
    "path/filepath"
    "os"
    "fmt"
    "flag"
)

func getFilelist(path string) {
        err := filepath.Walk(path, func(path string, f os.FileInfo, err error) error {
                if ( f == nil ) {return err}
                if f.IsDir() {return nil}
                println(path)
                return nil
        })
        if err != nil {
                fmt.Printf("filepath.Walk() returned %v\n", err)
        }
}

func main(){
        flag.Parse()
        root := flag.Arg(0)
        getFilelist(root)
}

运行效果如下:

好,就这些了,希望对你有帮助。

posted on 2012-08-23 01:08  Mike_Zhang  阅读(8201)  评论(3编辑  收藏  举报