介绍
这篇文章给大家介绍使用goland怎么恢复已更改的文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
1,查看历史更改文件
点击项目名,右键,选择当地的历史。
或点击项目名再点击VXA,选择当地的历史。
然后选择显示历史
2,恢复历史已更改文件
选择你想要恢复的文件,右键选择恢复,最后就会恢复到原来的位置了。
<强>补充:goland文件处理强>
golang是优秀的软件编程语言,由于golang很好的兼容各个系统,我经常使用golang写工具。
写工具经常会用到文件处理,io操作。
FileInfo接口
在遍历文件夹的时候回经常用到FileInfo接口
type FileInfo interface { ,名字()string ,,,,,,//,文件名称 ,大小()int64 ,,,,,,,//,文件大小 ,模式()FileMode ,,,,//, file mode 碎片 ,ModTime (), time.Time //modification 时间 ,IsDir (), bool ,,,,,,,//,是否文件夹 接口,系统(){},,,//,underlying data source (还要return nil) }
遍历文件
通过ioutil.ReadDir (src),可以读取到当前文件列表
func ReadDir (src 字符串),{ ,文件,err :=, ioutil.ReadDir (src) ,if err  !=, nil { fmt.Println才能(err) ,返回 ,} ,for _, file :=, range files { if 才能;file.IsDir (), {//,,,是文件夹 }{其他才能 ,,,,,,,,,,,//,是文件 ,,,,,,,} ,} }
遍历文件夹下所有文件
通过filepath。走方法递归读取文件夹和子文件,方便复制整个文件夹内容
func ReadDeepDir (src 字符串),{ ,err :=, filepath.Walk (src, func(字符串,path file os.FileInfo,, err 错误),error { if 才能;file ==, nil { ,,return 犯错 ,,} fmt.Println才能(路径) return 才能;零 ,}) ,if err  !=, nil { fmt.Printf才能(err.Error ()) ,} }
路径操作相关方法
func dir (src 字符串),,{ ,//获取路径指向文件夹名称 ,filepath.Base (src) , ,//获取文件所在的路径 ,filepath.Dir (src) , ,//获取文件扩展名 ,filepath.Ext (src) , ,//获取文件名称 ,name :=, strings.Replace (filepath.Base (src) filepath.Ext (src),““, 1) , ,//绝对路径 ,absPath _ :=, filepath.Abs (“”) , ,//相对路径 ,relPath _ :=, filepath.Rel (““,““) , ,//路径拼接 ,filepath.Join (“basepath",“appendpath") }
文件操作
func 操作(src 字符串),,{ ,//创建文件夹 _=大敌;os.Mkdir (“xxx" os.ModePerm) , ,//删除单个文件,不能删除文件夹=,,_  os.Remove (“xxx") , ,//删除文件夹或者文件=,,_  os.RemoveAll (“xxx") , ,//重命名文件=,,_  os.Rename (“xxx",“qqqq") }
使用ioutil文件读写
func 相(),,{ ,//读取文件,整个文件读取到内存,不能读取大文件 ,ioutil.ReadFile (“filename") ,//文件写入,每次都会新创建文件写入所有的内容,所以会覆盖之前的文件 ,ioutil.WriteFile (“filename"[]字节{},os.ModePerm) }
大文件的读,写相当于一个拷贝功能
func 副本(),{ ,fr, err :=, os.Open (“”) ,if err  !=, nil { fmt.Println才能(“open err") ,返回 ,} ,defer fr.Close () , 弗兰克-威廉姆斯,大敌;err :=, os.Create (“”) ,if err  !=, nil { fmt.Println才能(“create file error") ,返回 ,} ,buf :=,([]字节,1024) ,for { ,,n, err :=, fr.Read (buf) if 才能;err  !=, nil ,,, err ==, io.EOF { ,,fmt.Println(“读完“) ,,} _,_=才能fw.Write (buf [n]): ,} }使用goland怎么恢复已更改的文件