goland 恢复已更改文件的操作


Posted in Golang onApril 28, 2021

1、查看历史更改文件

点击项目名,右键,选择Local History。

goland 恢复已更改文件的操作

或点击项目名再点击VXA,选择Local History。

goland 恢复已更改文件的操作

然后选择Show History

goland 恢复已更改文件的操作

2、恢复历史已更改文件

选择你想要恢复的文件,右键选择Revert,最后就会恢复到原来的位置了。

goland 恢复已更改文件的操作

补充:goland文件处理

golang是优秀的软件编程语言,由于golang很好的兼容各个系统,我经常使用golang写工具。

写工具经常会用到文件处理,io操作。

FileInfo接口

在遍历文件夹的时候回经常用到FileInfo接口

type FileInfo interface {
 Name() string       // 文件名称
 Size() int64        // 文件大小
 Mode() FileMode     // file mode bits
 ModTime() time.Time // modification time
 IsDir() bool        // 是否文件夹
 Sys() interface{}   // underlying data source (can return nil)
}

遍历文件

通过ioutil.ReadDir(src),可以读取到当前文件列表

func ReadDir(src string) {
 files, err := ioutil.ReadDir(src)
 if err != nil {
  fmt.Println(err)
  return
 }
 for _, file := range files {
  if file.IsDir() {
   // 是文件夹
  }else{
            // 是文件
        }
 }
}

遍历文件夹下所有文件

通过filepath.Walk方法递归读取文件夹和子文件,方便复制整个文件夹内容

func ReadDeepDir(src string) {
 err := filepath.Walk(src, func(path string, file os.FileInfo, err error) error {
  if file == nil {
   return err
  }
  fmt.Println(path)
  return nil
 })
 if err != nil {
  fmt.Printf(err.Error())
 }
}

路径操作相关方法

func dir(src string)  {
 // 获取路径指向文件夹名称
 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 operation(src string)  {
 // 创建文件夹
 _= os.Mkdir("xxx",os.ModePerm)
 
 // 删除单个文件,不能删除文件夹
 _ = os.Remove("xxx")
 
 // 删除文件夹或者文件
 _ = os.RemoveAll("xxx")
 
 // 重命名文件
 _ = os.Rename("xxx","qqqq")
}

使用ioutil文件读写

func fileop()  {
 // 读取文件,整个文件读取到内存,不能读取大文件
 ioutil.ReadFile("filename")
 // 文件写入,每次都会新创建文件写入所有的内容,所以会覆盖之前的文件
 ioutil.WriteFile("filename",[]byte{},os.ModePerm)
}

大文件的读写,相当于一个拷贝功能

func copy() {
 fr, err := os.Open("")
 if err != nil{
  fmt.Println("open err")
  return
 }
 defer fr.Close()
 
 fw, err := os.Create("")
 if err != nil {
  fmt.Println("create file error")
  return
 }
 buf := make([]byte, 1024)
 for {
  n, err := fr.Read(buf)
  if err != nil && err == io.EOF {
   fmt.Println("读完")
  }
  _,_=fw.Write(buf[:n])
 }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Golang 相关文章推荐
用golang如何替换某个文件中的字符串
Apr 25 Golang
golang 如何通过反射创建新对象
Apr 28 Golang
golang import自定义包方式
Apr 29 Golang
golang 比较浮点数的大小方式
May 02 Golang
基于Golang 高并发问题的解决方案
May 08 Golang
Golang 实现获取当前函数名称和文件行号等操作
May 08 Golang
浅谈Golang 切片(slice)扩容机制的原理
Jun 09 Golang
go goroutine 怎样进行错误处理
Jul 16 Golang
Go 语言中 20 个占位符的整理
Oct 16 Golang
golang为什么要统一错误处理
Apr 03 Golang
Golang 1.18 多模块Multi-Module工作区模式的新特性
Apr 11 Golang
Golang 对es的操作实例
Apr 20 Golang
goland 清除所有的默认设置操作
go 原生http web 服务跨域restful api的写法介绍
Apr 27 #Golang
解决Golang中ResponseWriter的一个坑
Apr 27 #Golang
golang在GRPC中设置client的超时时间
golang http使用踩过的坑与填坑指南
Apr 27 #Golang
Golang 实现超大文件读取的两种方法
Apr 27 #Golang
golang中的空slice案例
Apr 27 #Golang
You might like
php Static关键字实用方法
2010/06/04 PHP
深入php define()函数以及defined()函数的用法详解
2013/06/05 PHP
PHP中创建图像并绘制文字的例子
2014/11/19 PHP
php判断当前用户已在别处登录的方法
2015/01/06 PHP
WordPress中的shortcode短代码功能使用详解
2016/05/17 PHP
iOS10推送通知开发教程
2016/09/19 PHP
用javascript实现页面打印的三种方法
2007/03/05 Javascript
基于jQuery的js分页代码
2010/06/10 Javascript
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
js 获取和设置css3 属性值的实现方法
2013/05/06 Javascript
AngularJS基础 ng-srcset 指令简单示例
2016/08/03 Javascript
jQuery视差滚动效果网页实现方法经验总结
2016/09/29 Javascript
理解javascript async的用法
2017/08/22 Javascript
node内置调试方法总结
2018/02/22 Javascript
vue-router实现编程式导航的代码实例
2019/01/19 Javascript
详解js中let与var声明变量的区别
2020/04/05 Javascript
vue实现下拉菜单树
2020/10/22 Javascript
JS实现多功能计算器
2020/10/28 Javascript
[42:00]完美世界DOTA2联赛PWL S3 Phoenix vs INK ICE 第一场 12.13
2020/12/17 DOTA
Python删除指定目录下过期文件的2个脚本分享
2014/04/10 Python
基于python socketserver框架全面解析
2017/09/21 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
python爬虫筛选工作实例讲解
2020/11/23 Python
英国异国风情旅游网站:Travel Talk Tours(团体旅游、探险旅游、帆船假期)
2018/07/26 全球购物
莫斯科制造商的廉价皮大衣:Fursk
2020/06/09 全球购物
税务干部鉴定材料
2014/02/11 职场文书
地球一小时宣传标语
2014/06/24 职场文书
材料专业大学毕业生自荐书
2014/07/02 职场文书
自我评价优缺点范文
2015/03/11 职场文书
2015年学校财务工作总结
2015/05/19 职场文书
离婚起诉书范文2015
2015/05/19 职场文书
初三毕业感言
2015/07/31 职场文书
优秀家长事迹材料(2016推荐版)
2016/02/29 职场文书
JavaScript 语句之常用 for 循环详解
2021/03/29 Javascript
在Python 中将类对象序列化为JSON
2022/04/06 Python