- 1、本文档共80页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第6章文件与数据库操作基本文件操作
01操作目录1.创建目录2.删除目录3.重命名目录4.遍历目录
操作目录1.创建目录创建目录使用Mkdir和MkdirAll这两个函数,Mkdir只能创建单个目录,而MkdirAll则可以一次性地建好指定路径下的多级目录,它们的原型分别如下:funcMkdir(目录名,权限码)error //创建单个目录funcMkdirAll(路径,权限码)error //创建多级目录说明:“目录名”可带相对或绝对路径,为相对路径时,默认是相对于当前项目目录的路径;为绝对路径时,路径中的盘符不区分大小写。“权限码”是一个4位的八进制数,通常取“0777”,表示创建的目录对所有用户可读写、可执行。这两个函数都返回一个error(错误)类型的值,当执行成功时,值为nil;发生错误时,则可通过这个返回值得到具体的错误信息。例如:err:=os.Mkdir(D:\\Go\\test,0777) //这种必须先建好Go目录?err:=os.MkdirAll(D:\\Go\\test,0777) //这种会自动创建Go目录err:=os.MkdirAll(D:/Go/test,0777) //也可以这样写err:=os.MkdirAll(d:/Go/test,0777) //或者这样写?err:=os.MkdirAll(Go/test,0777) //创建在当前项目目录下?iferr!=nil{ log.Fatal(err) //打印错误日志}
操作目录2.删除目录对目录的删除操作同样也有Remove和RemoveAll两个函数,分别对应删除单个目录(即其中没有子目录或文件的目录)和删除多级目录,原型分别为:funcRemove(目录名)error //删除单个目录funcRemoveAll(路径)error //删除多级目录其中,执行第2个函数会删除参数“路径”指定的目录及其下全部文件和子目录。3.重命名目录目录重命名用Rename函数,原型为:funcRename(原目录名,新目录名)error //重命名目录其中,参数中的两个目录名也都可以带相对或绝对路径,默认相对的都是当前项目目录的路径,如果新目录已经存在,则替换它。
操作目录4.遍历目录在path包下的filepath子包中,有一个Walk函数可遍历目录,原型为:funcWalk(根路径,自定义函数)error //遍历目录使用时该函数需要用户提供一个自定义函数作为其第2个参数,Walk函数从第1个参数指定的根路径开始,按照用户定义函数的具体功能,遍历操作其下的各级子目录。【实例6.1】目录操作演示。程序代码如下(dir.go):说明:(a)遍历时显示各级目录及其修改时间(通过os.FileInfo中的ModTime函数)。(b)用MkdirAll函数根据当前系统时间依次创建年份、月份、日期对应名称的各级子目录。(c)重命名后的“下载Go学习资源”这个目录下面依然存有原来的年月日各级子目录,所以无法用Remove函数删除,若改用删除多级目录的RemoveAll函数就能成功删除了。
操作目录运行结果如图。执行程序后可看到在D盘下生成的目录如图。
02文件读写1.创建文件2.打开文件3.写文件4.读文件
文件读写1.创建文件创建文件使用Create函数,原型如下:funcCreate(文件名)(*os.File,error) //创建文件说明:“文件名”可带相对或绝对路径,为相对路径时,默认是相对于当前项目目录的路径;为绝对路径时,路径中的盘符不区分大小写。此函数有两个返回值,第1个为指针型,是指向os包File(文件类)对象的句柄,如果创建成功,就可以通过该句柄来对文件执行读写等操作;第2个为error型,创建失败时通过它得到具体的错误信息。如果要创建的文件已经存在,则它会被重置为空白文件。例如://创建在当前项目目录fp,err:=os.Create(./test.txt)fp,err:=os.Create(test.txt) //或者直接写文件名?//创建在本地计算机某个路径下
fp,err:=os.Create(D:\\Go\\test.txt) //必须先在D盘建好Go目录fp,err:=os.Create(D:/Go/test.txt) //也可以这样写fp,err:=os.Create(d:/Go/test.txt) //或者这样写?fmt.Printf(%T,fp) //
您可能关注的文档
- Go语言程序设计及实例 课件 第1章 Go语言及编程环境.pptx
- Go语言程序设计及实例 课件 第2章 Go语言基础.pptx
- Go语言程序设计及实例 课件 第3章 Go语言面向对象编程.pptx
- Go语言程序设计及实例 课件 第4章 Go语言并发编程.pptx
- Go语言程序设计及实例 课件 第5章 源代码组织与管理.pptx
- Go语言程序设计及实例 课件 第7章 Go网络编程.pptx
- Go语言程序设计及实例 课件 第8章 Go语言微服务开发入门.pptx
- 1.4.1 用空间向量研究直线、平面的位置关系课件(2)高二上学期数学人教A版(2019)选择性必修第一册.pptx
- 第八单元 风趣与幽默 统编版语文五年级下册.docx
- 10 小说阅读(散文化小说,诗化小说等文本特征题精准突破)高考语文二轮复习之现代文阅读(全国通用).docx
- 数学好玩 我们一起去游园 数学三年级下册同步培优讲义(北师大版).docx
- 7.2 快乐成长 数学三年级下册同步培优讲义(北师大版).docx
- 14.1《故都的秋》课件 统编版高中语文必修上册.pptx
- 专题02 重点词汇 高一英语上学期期中考点(通用版).docx
- 11.2化学肥料课件--九年级化学人教版下册.pptx
- 中考化学二轮复习专题五 框图推断题课件.pptx
- 第8单元 数学广角—找次品-五年级下册数学(人教版).docx
- 8.3实际问题与二元一次方程组第3课时(课件)七年级数学下册(人教版).pptx
- 专题03 重点语法知识点 高一英语上学期期中考点(通用版).docx
- 专题8-方阵问题-小升初数学奥数思维拓展专项讲义之典型应用题(通用版).docx
文档评论(0)