Go语言文件操作本文主要介绍了Go语言中文件读写的相关操作 。
文件是什么?
计算机中的文件是存储在外部介质(通常是磁盘)上的数据集合,文件分为文本文件和二进制文件 。
os.Open() 函数能够打开一个文件 , 返回一个 *File 和一个 err。对得到的文件实例调用 close() 方法能够关闭文件 。
为了防止文件忘记关闭,我们通常使用defer注册文件关闭语句 。
Read方法定义如下:
它接收一个字节切片,返回读取的字节数和可能的具体错误,读到文件末尾时会返回 0 和 io.EOF。举个例子:
使用for循环读取文件中的所有数据 。
bufio是在file的基础上封装了一层API,支持更多的功能 。
io/ioutil 包的 ReadFile 方法能够读取完整的文件,只需要将文件名作为参数传入 。
os.OpenFile() 函数能够以指定模式打开文件,从而实现文件写入相关功能 。
其中:
name :要打开的文件名flag :打开文件的模式 。模式有以下几种:
perm :文件权限,一个八进制数 。r(读)04,w(写)02,x(执行)01 。
go语言 ioutil.ReadFile 与ioutil.ReadAll差别 ?? 当读取91.2 MB文件时go语言io操作 , read1耗时43msgo语言io操作,read2耗时99ms 。
查看源码go语言io操作:
读取文件主要是通过 Read(p []byte) (n int, err error) :
官方文档中关于该接口方法go语言io操作的说明:
结论:
??ReadFile(filename string)方法之所以速度快go语言io操作的原因就是先计算出file文件的size,在初始化对应size大小的buff,传入ReadRead(p []byte) 来读取字节流
go语言select语句特点1 select语句的每个case语句必须IO操作
2 执行 case 语句顺序是随机的
3 select的每个case(包含default)语句是阻塞的
4 如果case语句均发生阻塞,那么执行default语句
【go语言io操作 go语言 cgo】go语言io操作的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于go语言 cgo、go语言io操作的信息别忘了在本站进行查找喔 。
推荐阅读
- bui中js里u方法的使用的简单介绍
- css给div加透明,css设置透明度的两种方法
- 哪个主播可以看斗鱼直播,哪个视频可以看斗鱼电视剧
- linux网卡开启的命令 linux怎么打开网卡配置界面
- 多目标遗传算法c语言实现程序,遗传算法多目标优化matlab源代码
- excel怎么算相邻数据,excel相邻数据求差
- b站小电视看直播,b站在电视上看直播
- 字符串搜索函数c语言 c++字符串搜索
- linux存储查询命令,linux查看存储过程的语句