文件——创建文件并写入内容

mac2022-06-30  10

package main

import ( “os” “fmt” “bufio” )

/* 基本介绍 func OpenFile(name string.flag int,perm FileMode)(file File,err error) 说明:os.OpenFile时一个更一般性的文件打开函数,它回使用指定的选项(如O_RDONLY等)、指定的模式(如0666等)打开指定名称的文件,如果操作成功,返回的文件对象可用于I/O,如果出错,错误底层类型时PathError。 第二个参数:文件打开模式(可以组合):

第三个参数:权限控制(linux) r->4 w->2 x->1 详情参考尚硅谷-linux课程 / / 基本应用实例-方式—— 1)创建一个新文件,写入内容5句"hello,Gardon" 2)打开一个存在的文件中,将原来的内容覆盖成新的内容10句"你好,尚硅谷!" 3)打开一个存在的文件,在原来的内容追加内容"ABC!ENGLISHI" 4)打开一个存在的文件,将原来的内容读出显示在终端,并且追加5句"hello,北京!"

使用os.OpenFile(),bufio.NewWriter(),“Writer"的方法WriteString完成上面的任务。 */ func main(){ //创建一个新文件,写入内容5句"hello,Gardon” //1,打开文件"d:/abc.txt" filePath:=“d:/abc.txt” file,err:=os.OpenFile(filePath,os.O_WRONLY|os.O_CREATE,0666) if err != nil{ fmt.Printf(“open file err=%v\n”,err) return } //解释关闭file句柄 defer file.Close()

//准备写入5句"hello,Gardon" str := "hello,Gardon\n"//\n表示换行符 //写入时,使用带缓存的*Writer writer := bufio.NewWriter(file) for i:=0;i<5;i++{ writer.WriteString(str) } //因为writer时带缓存的,因此在调用WriterString方法时,其实 //内容时先写入到缓存的,所以需要调用Flush方法,将缓冲的数据 //真正写入到文件中,否则文件中回没有数据!!! writer.Flush()//调用bufio包中的Flush方法

} //

最新回复(0)