func main() {
f,err:= os.OpenFile("E:/桌面/",os.O_RDONLY,os.ModeDir)
if err!=nil{
fmt.Println("openfile err",err)
return
}
defer f.Close()
//读取方式
info,err:= f.Readdir(-1)
if err!=nil{
fmt.Println("readdir err",err)
return
}
for _,fileinfo:=range info{
if !fileinfo.IsDir(){
if strings.HasSuffix(fileinfo.Name(),".txt"){
cpMp32Dir("E:/桌面/"+fileinfo.Name(),"E:/桌面/bbb.txt")
}
}
}
}
func cpMp32Dir(src,dst string) {
f,err:= os.Open(src)
if err!=nil{
fmt.Println("open err:",err)
}
defer f.Close()
//创建写入文件
fs,err:= os.Create(dst)
if err!=nil{
fmt.Println("create err",err)
return
}
defer fs.Close()
//从文件当中读取数据到缓冲区
buf:=make([]byte,4096)
n,errs:= f.Read(buf)
if err!=nil && errs==io.EOF{
fmt.Printf("读完n=%d\n",n)
return
}
fs.Write(buf[:n])
}