ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
### 文件写入 > func (f *File) Write(b []byte) (n int, err error) > Write(b []byte) Write向文件中写入len(b)字节数据。它返回写入的字节数和可能遇到的任何错误。如果返回值为n!=len(b),本方法会返回一个非nil的错误。 ``` package main import ( "fmt" "os" ) func write(path string, str string) { // 写入文件用Create 读取用Open file, err := os.Create(path) if err != nil { fmt.Println(err) } // str 传的是值 data := str for i := 0; i < 3; i++ { file.Write([]byte(data)) } file.Close() } // 写入数据到 999.txt 内容 func main() { // 路径 write("E:\\flie\\999.txt", "写入了123456789\r\n") } ``` 使用WriteAt可以指定位置写入 > func (f *File) WriteAt(b []byte, off int64) (n int, err error) > Write(b []byte) Writeat在文件指定的位置(相对于文件开始的位置)写入len(b)字节数据。它返回写入的字节数和可能遇到的任何错误。如果返回值为n!=len(b),本方法会返回一个非nil的错误。 ``` package main import ( "fmt" "os" ) func write(path string, str string) { // 写入文件用Create 读取用Open file, err := os.Create(path) if err != nil { fmt.Println(err) } // str 传的是值 data := str for i := 0; i < 3; i++ { // 按指定偏移量写入数据 ix := i * 64 // strconv.Itoa(i)这是写进去i // file.WriteAt([]byte(data+strconv.Itoa(i)+"\r\n"), int64(ix)) file.WriteAt([]byte(data+"\r\n"), int64(ix)) } file.Close() } // 写入数据到 999.txt 内容 func main() { // 路径 write("E:\\flie\\999.txt", "写入了123456789") } ``` Write和WriteAt 写入数据会覆盖原文件,并且从文件开始处写入内容 ### 删除文件 和删除目录操作类似 > **func Remove(name string) error** > name string 传入单个文件路径 > **func RemoveAll(name string) error** > >name string 传入所有文件路径 ``` package main import ( "fmt" "os" ) func delete() { // 删除文件 err := os.Remove("E:\\flie\\999.txt") if err != nil { fmt.Println(err) } else { fmt.Println("删除单个文件成功") } // 删除路径下所有文件 err2 := os.RemoveAll("E:\\flie\\") if err2 != nil { fmt.Println(err2) } else { fmt.Println("删除当前目录所有文件成功") } } func main() { delete() } ```