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 相关文章推荐
go原生库的中bytes.Buffer用法
Apr 25 Golang
golang如何去除多余空白字符(含制表符)
Apr 25 Golang
解决Golang time.Parse和time.Format的时区问题
Apr 29 Golang
Golang: 内建容器的用法
May 05 Golang
go类型转换及与C的类型转换方式
May 05 Golang
Golang全局变量加锁的问题解决
May 08 Golang
Golang 实现获取当前函数名称和文件行号等操作
May 08 Golang
Go语言设计模式之结构型模式
Jun 22 Golang
Go语言空白表示符_的实例用法
Jul 04 Golang
入门学习Go的基本语法
Jul 07 Golang
Go中的条件语句Switch示例详解
Aug 23 Golang
Go调用Rust方法及外部函数接口前置
Jun 14 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
全国FM电台频率大全 - 7 吉林省
2020/03/11 无线电
PHP自动生成月历代码
2006/10/09 PHP
php中var_export与var_dump的区别分析
2010/08/21 PHP
PHP面向对象程序设计之类与反射API详解
2016/12/02 PHP
php实现微信模板消息推送
2018/03/30 PHP
jquery导航制件jquery鼠标经过变色效果示例
2013/12/05 Javascript
js 对小数加法精度处理示例说明
2013/12/27 Javascript
jQuery实现径向动画菜单效果
2015/07/17 Javascript
jQuery解析json数据实例分析
2015/11/24 Javascript
jQuery mobile 移动web(4)
2015/12/20 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
2016/07/21 Javascript
jquery操作ID带有变量的节点实例
2016/12/07 Javascript
vue 2.0项目中如何引入element-ui详解
2017/09/06 Javascript
深入理解Vue生命周期、手动挂载及挂载子组件
2017/09/27 Javascript
JS中双击和单击事件冲突的解决方法
2018/04/09 Javascript
Angular CLI在Angular项目中如何使用scss详解
2018/04/10 Javascript
react在安卓中输入框被手机键盘遮挡问题的解决方法
2018/09/03 Javascript
在Python中使用SQLite的简单教程
2015/04/29 Python
Python+PIL实现支付宝AR红包
2018/02/09 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
2018/04/02 Python
python实现音乐下载器
2018/04/15 Python
解决pycharm运行时interpreter为空的问题
2018/10/29 Python
python GUI库图形界面开发之PyQt5信号与槽的高级使用技巧(自定义信号与槽)详解与实例
2020/03/06 Python
python爬虫开发之Request模块从安装到详细使用方法与实例全解
2020/03/09 Python
python 链接sqlserver 写接口实例
2020/03/11 Python
解决flask接口返回的内容中文乱码的问题
2020/04/03 Python
总经理司机岗位职责
2014/02/06 职场文书
节约能源标语
2014/06/17 职场文书
群众路线教育实践活动剖析材料
2014/09/30 职场文书
课堂打架检讨书200字
2014/11/21 职场文书
运动会新闻报道稿
2015/07/22 职场文书
2015年度个人工作总结报告
2015/10/24 职场文书
详解Python自动化之文件自动化处理
2021/06/21 Python
Java生成读取条形码和二维码的简单示例
2021/07/09 Java/Android
python中pd.cut()与pd.qcut()的对比及示例
2022/06/16 Python
js面向对象编程OOP及函数式编程FP区别
2022/07/07 Javascript