golang遍历某个目录下的文件,并读取文件名到一个csv文件
2013-03-07 08:47
666 查看
package main import ( "encoding/csv" "fmt" "os" "path/filepath" "container/list" ) var outputFileName string = "filesName.csv" func CheckErr(err error) { if nil != err { panic(err) } } func GetFullPath(path string) string { absolutePath, _ := filepath.Abs(path) return absolutePath } func PrintFilesName(path string) { fullPath := GetFullPath(path) listStr := list.New() filepath.Walk(fullPath, func(path string, fi os.FileInfo, err error) error { if nil == fi { return err } if fi.IsDir() { return nil } name := fi.Name() if outputFileName != name{ listStr.PushBack(name) } return nil }) OutputFilesName(listStr) } func ConvertToSlice(listStr *list.List)[]string{ sli := []string{} for el:= listStr.Front(); nil != el; el= el.Next(){ sli = append(sli, el.Value.(string)) } return sli } func OutputFilesName(listStr *list.List) { files := ConvertToSlice(listStr) //sort.StringSlice(files).Sort()// sort f, err := os.Create(outputFileName) //f, err := os.OpenFile(outputFileName, os.O_APPEND | os.O_CREATE, os.ModeAppend) CheckErr(err) defer f.Close() f.WriteString("\xEF\xBB\xBF") writer := csv.NewWriter(f) length := len(files) for i:= 0; i < length; i++{ writer.Write([]string{files[i]}) } writer.Flush() } func main() { var path string if len(os.Args) > 1 { path = os.Args[1] } else { path, _ = os.Getwd() } PrintFilesName(path) fmt.Println("done!") }
相关文章推荐
- 分享下java 读取目录及子目录下指定文件名的路径 并放到一个List数组里面返回遍历和写到文件里
- 分享下java 读取目录及子目录下指定文件名的路径 并放到一个List数组里面返回遍历和写到文件里
- java 读取目录及子目录下指定文件名的路径 并放到一个List数组里面返回遍历和写到文件里
- golang语言实现读取csv文件内容,把相同的内容提取到另外一个文件
- 分享下java 读取目录及子目录下指定文件名的路径 并放到一个List数组里面返回遍历和写
- 遍历一个目录下的文件,并把文件名保存在vector中
- 读取目录下文件名,存入一个文件
- LUA读取CSV文件的一个简单Demo
- Java-读取某个目录下所有文件、文件夹和3种从文件路径中获取文件名的方法
- python读取csv文件并把文件放入一个list中脚本实例
- InputStream读取远程或者网络url时报(文件名、目录名或卷标语法不正确)的错,文件读不出来
- Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)
- 遍历一个指定的目录(包含子目录和文件),用Jdom把该目录的树形结构写入xml文件中
- C# 遍历读取某个目录文件夹下的不同类型子文件和其子文件夹(里面可能又有许多文件)
- Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)
- File(遍历一个目录下的所有文件)
- C++遍历读取文件夹(仅限当前目录而不深入)下的文件
- python遍历一个目录,输出所有的文件名
- HALCON初步:文件夹遍历,文件筛选,文件名拆分,图片读取及保存
- Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)