标签:tab 24* 数据 close turn 磁盘 creat string 写入
package main
import (
"bufio"
"fmt"
"io"
"os"
)
func WriteFile(path string) {
//创建一个文件,并返回文件的头指针
f, err := os.Create(path)
if err != nil {
fmt.Println("err=", err)
return
}
defer f.Close() //最后使用完后,关闭文件
var buf string
for i := 0; i < 10; i++ {
//将 i=%d\n 这个字符串存储到buf中,把换行也写进去了
buf = fmt.Sprintf("i=%d\n", i) //换行输入
//buf = fmt.Sprintf("i=%d\t", i)//写在一行,每个字之间有一个tab空格
//写入信息到文件中,返回写入的字节是是数,和可能出现的错误
n, err := f.WriteString(buf)
if err != nil {
fmt.Println("err=", err)
}
fmt.Println("n=", n) //打印写入字节的大小
}
}
func ReadFile(path string) {
//打开文件
f, err := os.Open(path)
if err != nil {
fmt.Println("err=", err)
return
}
defer f.Close()
buf := make([]byte, 1024*2) //2k的大小
//n:是读取数据的大小;把读取的数据放入到buf 字节切片中
n, err1 := f.Read(buf)
//fmt.Println("n=", n)//40字节
if err1 != nil && err1 != io.EOF { //文件出错,同时没有到文件结尾
fmt.Println("err=", err)
return
}
fmt.Println("buf=", string(buf[:n])) //n:表示全部转换
}
//每次读取一行.用bufio包
func main() {
var path string = "./test.txt"
WriteFile(path)
ReadFile(path)
}
标签:tab 24* 数据 close turn 磁盘 creat string 写入
原文地址:https://www.cnblogs.com/zhaopp/p/11626120.html