当前位置: 首页 > news >正文

东莞企业网站建设开发公司石家庄网站到首页排名

东莞企业网站建设开发公司,石家庄网站到首页排名,中国贸易网登录,曲阜网站建设哪家好前言 通过案例展示如何读取文件里的内容。本文接着上篇文章的内容#xff0c;介绍文件的写入操作。 File.Write、File.WriteString、File.WriteAt File.Write(b []byte) (n int, err error) 直接操作磁盘往文件里写入数据#xff0c;写入单位为字节。 b 参数#xff1a;…前言 通过案例展示如何读取文件里的内容。本文接着上篇文章的内容介绍文件的写入操作。 File.Write、File.WriteString、File.WriteAt File.Write(b []byte) (n int, err error) 直接操作磁盘往文件里写入数据写入单位为字节。 b 参数写入的数据类型为字节切片。 返回值 n写入的字节数。 返回值 err写入数据的过程中产生的错误。 File.WriteString(s string) (n int, err error) 直接操作磁盘往指定文件里写入数据写入单位为字符串。 s 参数写入的字符串数据。 返回值 n写入的字节数。 返回值 err写入数据的过程中产生的错误。 File.WriteAt(b []byte, off int64) (n int, err error) 从指定位置 off 往文件里顺序写入数据如果某个偏移量上有数据则会覆盖。 b 参数写入的数据类型为字节切片。 off 参数偏移量从此位置开始写入数据。 返回值 n写入的字节数。 返回值 err写入数据的过程中产生的错误。 文件写入操作 import (fmtos )func main() {file, err : os.OpenFile(test.txt, os.O_CREATE, 0)if err ! nil {fmt.Println(err)return}defer file.Close()count, err : file.Write([]byte{H, e, l, l, o, , W, o, r, l, d, \n})if err ! nil {return}fmt.Printf(写入了 %d 字节\n, count)count, err file.WriteString(Hello Golang)if err ! nil {return}fmt.Printf(写入了长度为 %d 的字符串\n, count)count, err file.WriteAt([]byte{x, x, x, x, x, x, x, x, x, x, x}, 0)if err ! nil {return}fmt.Printf(写入了 %d 字节\n, count) } 首先打开 test.txt 文件指定的模式为 os.O_CREATE如果文件不存在则会自动创建 然后通过 Write 方法以字符的形式往文件里写入 Hello World\n 的内容 接着通过 WriteString 方法以字符串的形式往文件里写入 Hello Golang 内容此时文件里的内容如下所示 Hello World Hello Golang最后通过 WriteAt 方法指定从偏移量为 0 的位置开始写入数据 xxxxxxxxxxx由于 0 以及之后位置都有数据因此原有数据被覆盖了。最后文件的内容为 xxxxxxxxxxx Hello GolangFile.Seek File.Seek(offset int64, whence int) 相对于开头位置或当前位置或末尾位置将设置当前读或写的偏移量设置为 offset。 offset 参数所要设置的偏移量。 whence相对于哪个位置开始设置偏移量的标志可选值为 0 → 开头位置1 → 当前位置2 → 末尾位置。 应用 import (fmtos )func main() {file, err : os.OpenFile(test.txt, os.O_CREATE, 0)if err ! nil {fmt.Println(err)return}defer file.Close()_, err file.WriteString(G0lang)if err ! nil {return}_, err file.Seek(1, 0)if err ! nil {fmt.Println(err)return}_, err file.Write([]byte{o})if err ! nil {fmt.Println(err)return} } 打开 test.txt 文件指定的模式为 os.O_CREATE如果文件不存在则会自动创建 使用 WriteString 方法往文件里写入 G0lang 字符串 此时发现第二个字符错了0 应该改成 o此时的偏移量是指向尾部的使用 Seek 方法将偏移量移到第二个位置然后写入字符 o由于当前位置已有数据 0因此 o 将会覆盖 0 bufio.NewWriter、Writer.WriteString、Writer.Flush 如果需要多次执行写入文件的操作推荐使用 bufio 里的 Writer 结构体去操作它会开辟一个缓冲区默认大小为 4096 字节。在数据没有被刷入磁盘之前所写入的数据都会暂时保存到缓冲区里。 NewWriter(w io.Writer) *Writer 开辟一个默认值为 4096 字节的缓冲区用于暂存写入文件的数据内容返回一个 Writer 结构体的指针变量 w 参数类型为 Writer 接口实现这个接口的数据类型变量都可以作为参数例如 File。 返回值 *Writer一个 Writer 结构体的指针变量通过该变量可以往缓冲区里写入数据。 Writer.WriteString(s string) (int, error) 往缓冲区写入内容的方法。 参数 s 为写入的字符串。 第一个返回值为写入的字节数。 第二个返回值为写入数据的过程中产生的错误。 Writer.Flush() error 将所有的缓存数据写入磁盘。 返回值为数据写入磁盘的过程中产生的错误。 文件写入操作 import (bufiofmtos )func main() {file, err : os.OpenFile(test.txt, os.O_CREATE, 0)if err ! nil {fmt.Println(err)return}defer file.Close()writer : bufio.NewWriter(file)_, err writer.WriteString(Hello World\n)if err ! nil {fmt.Println(err)return}_, err writer.WriteString(Hello Golang\n)if err ! nil {fmt.Println(err)return}_, err writer.WriteString(Hello Gopher\n)if err ! nil {fmt.Println(err)return}writer.Flush() }首先打开 test.txt 文件指定的模式为 os.O_CREATE如果文件不存在则会自动创建 然后使用 NewWriter 函数获取一个 Writer 结构体的指针变量 writer 接着通过 writer 的 WriteString 方法将内容保存到缓冲区里 最后调用 Flush 方法将所有的缓存数据写入磁盘。 小结 本文先是对 File.Write、File.WriteString、File.WriteAt 进行介绍通过例子演示它们的使用方式然后介绍 File.Seek说明了它的用法最后引出 bufio.NewWriter、Writer.WriteString、Writer.Flush使用它们代替 File 结构体里的写入方法可以不用频繁操作磁盘提高写入效率。
http://www.hkea.cn/news/14487640/

相关文章:

  • 网站上的小动画咋做hyein seo
  • 建设厅官方网站河南品牌营销方案
  • 网站怎么无法访问一站式服务大厅
  • 手机响应式网站开发模板之家网络营销企业网站推广
  • wordpress网站设计九江濂溪区
  • 淘客优惠券网站建设广州档案馆建设网站
  • 建个企业网站备案需要多长时间手机功能网站案例
  • 青岛网站设计做暧暧网站
  • 南通企业建站程序海珠电子商务网站建设
  • 有哪些网站可以做全景效果图房价走势最新消息2022
  • 揭阳城乡建设局网站巴中手机网站建设
  • 做网站用什么语言山西seo谷歌关键词优化工具
  • 自己制作网站房产网站建设机构
  • 自己创建网站403磁力王
  • 网站维护运营优化公司超轻粘土做动漫网站
  • 涿州网站建设公司有哪些个人网站如何做淘宝客
  • 网站建设与管理试题国外wordpress主题破解版
  • 自己可以做一个网站吗Wordpress福利资源模板
  • php 公司网站源码怎么停止网站
  • it公司做网站用什么软件重庆市证书查询官网
  • 广州专业的网站建设公司深圳ui设计公司
  • 网站建设上传与发布流程个人主题网站设计
  • 网站开发好学不淄博个人承接网站制作
  • 视频网站建设技术方案云南微网站搭建
  • 站长统计是什么意思微信小程序赚钱
  • ps 做ui比较好的网站有哪些贵港北京网站建设
  • 购物网站建设价格陕西建设厅继续教育网站
  • 网站优缺点做毕业设计的参考文献网站
  • 网站无法导入照片郑州网站建设选智巢
  • 成都电商网站门窗东莞网站建设技术支持