云社区 博客 博客详情

golang文件操作

SegmentFault思否 发表于 2020-10-24 00:44:15 2020-10-24
0
0

【摘要】 一、打开和关闭文件打开使用函数func Open (name string) (file *file, err error)关闭文件func (f *File) Close() error带缓冲的 *Readerreader := bufio.NewReader(file) // 循环读每行 for { str, err := reader.ReadString('\n') ...

一、打开和关闭文件

打开使用函数

func Open (name string) (file *file, err error)

关闭文件

func (f *File) Close() error

带缓冲的 *Reader

reader := bufio.NewReader(file)
// 循环读每行
for { str, err := reader.ReadString('\n') // 读到一个换行就结束 if err == io.EOF { // io.EoF代表文件末尾 break; }
}

一次性读文件

file := "d:/test.txt"
content, err := ioutil.ReadFile(file)
if err != nil { fmt.Printf("read err %v", err)
}
fmt.Printf("%v", string(content)) // []byte

判断文件或文件夹是否存在
若返回错误为nil,说明文件或文件夹存在
若返回错误类型使用os.IsNotExist()判断为true,说明不存在
如果错误类型为其他,则不确定是否存在

_,err := os.Stat(path)

二、写文件

os.OpenFile(name string, flag int, perm FileMode) (file *File, err error)
str := "xxxx"
writer := bufio.NewWriter(file)
writer.WriterString(str)
// writer是带缓存的,WriterString只是写入缓存
//需要调用Flush,将缓存输入写入磁盘
writer.Flush()

文章来源: segmentfault.com,作者:binbin,版权归原作者所有,如需转载,请联系作者。

原文链接:segmentfault.com/a/1190000037572207

登录后可下载附件,请登录或者注册

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:huaweicloud.bbs@huawei.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
评论文章 //点赞 收藏 0
点赞
分享文章到微博
分享文章到朋友圈

上一篇:面试:springboot之核心原理(二)

下一篇:react配置@为src根目录

评论 (0)


登录后可评论,请 登录注册

评论