基本的语法:
//func OpenFile(name string,flag int,perm FileMode)(file *File,err error)
//flag是文件打开模式,通过|可以组合使用
//O_RDONLY 只读的方式打开文件
//WRONLY 只写的方式打开文件
//RDWR读写模式打开文件
//APPEND 写操作时将数据附加到文件尾部
//CREATE 如果不存在将创建一个新文件
//FileMode 在windows下基本上是无效的,适用于linux和unix系统下
//1.打开文件
filePath := "C:/test100/abc.txt" //要把内容写入到哪个文件里面去,这就是文件的路径
file, err := os.OpenFile(filePath, os.O_WRONLY|os.O_CREATE, 0666)
//func OpenFile(name string,flag int,perm FileMode)(file *File,err error)
//flag是文件打开模式,通过|可以组合使用
//O_RDONLY 只读的方式打开文件
//WRONLY 只写的方式打开文件
//RDWR读写模式打开文件
//APPEND 写操作时将数据附加到文件尾部
//CREATE 如果不存在将创建一个新文件
//FileMode 在windows下基本上是无效的,适用于linux和unix系统下
//1.打开文件
filePath := "C:/test100/abc.txt" //要把内容写入到哪个文件里面去,这就是文件的路径
file, err := os.OpenFile(filePath, os.O_WRONLY|os.O_CREATE, 0666)
//func OpenFile(name string,flag int,perm FileMode)(file *File,err error)
//flag是文件打开模式,通过|可以组合使用
//O_RDONLY 只读的方式打开文件
//WRONLY 只写的方式打开文件
//RDWR读写模式打开文件
//APPEND 写操作时将数据附加到文件尾部
//CREATE 如果不存在将创建一个新文件
//FileMode 在windows下基本上是无效的,适用于linux和unix系统下
if err != nil {
fmt.Printf("open file err=%v\n", err)
return
}
defer file.Close()
//准备写入5句,“hello,gardon”
str := "hello,gardon\n"
//写入的时候,使用带缓存的*writer
writer := bufio.NewWriter(file)
for i := 0; i < 5; i++ {
writer.WriteString(str)
}
//因为writer是带缓存的,因此在调用writerstring方法时,其实内容是先写入到缓存的。、
//write结构体是有一个带缓存的,
//type Writer struct{
// err error
// buf []byte
// n int
// wr io.Writer
// }
//writer内容是先写入到缓存中的,所以需要调用Flush方法,将缓冲的数据
//真正写入到文件中,否则文件中会丢失数据
writer.Flush()
//因为writer是带缓存的,因此在调用writerstring方法时,其实内容是先写入到缓存的。、
//write结构体是有一个带缓存的,
//type Writer struct{
// err error
// buf []byte
// n int
// wr io.Writer
// }
//writer内容是先写入到缓存中的,所以需要调用Flush方法,将缓冲的数据
//真正写入到文件中,否则文件中会丢失数据
writer.Flush()