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

做网站建设培训长春工作招聘网

做网站建设培训,长春工作招聘网,制作一般网站,网站怎么做国际化Go语言的输入输出流不如其他语言那么直观,由于是通过实现接口方法的隐式继承所以比较抽象,今天具体介绍一下go语言的输入输出流。 go语言输入输出在io库中,使用Reader接口,如下: type Reader interface {Read(p []by…

Go语言的输入输出流不如其他语言那么直观,由于是通过实现接口方法的隐式继承所以比较抽象,今天具体介绍一下go语言的输入输出流。

go语言输入输出在io库中,使用Reader接口,如下:

type Reader interface {Read(p []byte) (n int, err error)
}

Read方法从流中读取长度为len(p)字节数据写入p。也就是使用Read方法可以将流读到p中,从而从流中到程序中。

当Read在读取n > 0个字节后遭遇错误或者到达文件结尾时,会返回读取的字节数。它可能会在该次调用返回一个非nil的错误,或者在下一次调用时返回0和该错误

io.Reader 是一个基本的接口,用于表示数据的读取。它只有一个方法 Read

io.ReadFull从 io.Reader 中精确读取 len(buf) 字节的数据。

Writer接口是写入流接口,如下:

type Writer interface {Write(p []byte) (n int, err error)
}

Write方法将len(p) 字节数据从p写入底层的数据流。

它会返回写入的字节数(0 <= n <= len(p))和遇到的任何导致写入提取结束的错误。Write必须返回非nil的错误,如果它返回的 n < len(p)。Write不能修改切片p中的数据,即使临时修改也不行。

io.Writer 是一个基本的接口,用于表示数据的写入。它只有一个方法 Write

io.WriteStringio.Writer 写入字符串。

流复制,从输出流复制到输出流,如下:

func Copy(dst Writer, src Reader) (written int64, err error)

上述只是输入输出流的基本用法,还有许多继承类,如下:

  • os.File 同时实现了 io.Reader 和 io.Writer
  • strings.Reader 实现了 io.Reader
  • bufio.Reader/Writer 分别实现了 io.Reader 和 io.Writer
  • bytes.Buffer 同时实现了 io.Reader 和 io.Writer
  • bytes.Reader 实现了 io.Reader
  • compress/gzip.Reader/Writer 分别实现了 io.Reader 和 io.Writer
  • crypto/cipher.StreamReader/StreamWriter 分别实现了 io.Reader 和 io.Writer
  • crypto/tls.Conn 同时实现了 io.Reader 和 io.Writer
  • encoding/csv.Reader/Writer 分别实现了 io.Reader 和 io.Writer
  • mime/multipart.Part 实现了 io.Reader
  • net/conn 分别实现了 io.Reader 和 io.Writer(Conn接口定义了Read/Write)

上述包和结构体都实现了io.Reader方法,因此都可以使用Read方法将流读取到程序中。

常用的类型有:os.File、strings.Reader、bufio.Reader/Writer、bytes.Buffer、bytes.Reader

在这里插入图片描述

可以看到直接获取字节流的ReadFile方法也是调用了Read方法,如下:

在这里插入图片描述

在strings的也存在Reader接口,看源码如下:

在这里插入图片描述

等等其他几个接口也是如此,在未被封装的时候都是调用Read方法。

http://www.yayakq.cn/news/559121/

相关文章:

  • 自己有网站怎么做点卡网站建设公司如何转型
  • 网站建设推广襄樊烟台seo网络推广
  • wordpress怎样建站建设网站多少费用
  • 仕德伟做的网站青岛网站设计机构
  • 网站建设尾款收取wordpress站点打不开
  • 界首网站优化公司led灯网站策划书
  • 我自己做的网站一直没有效果怎么办电商cms
  • 建设手机网站包括哪些费用吗网页关于我们怎么设计
  • 小白建设论坛网站能建商城
  • 下列关于网站开发中网页发布做二手市场类型的网站名字
  • 建设电子商务网站步骤江西网站建设平台
  • 怎么给人介绍自己做的网站九江市建筑公司
  • 山东省建设局网站首页网站整合营销等服务
  • 公司内部网站设计做网站要不要营业执照
  • 小程序网站开发清新区住房和城乡建设局网站
  • 南阳网站建设seo民宿网络营销方式
  • 佛山大良网站建设做系统去哪个网站
  • 网站建设如何学徐州人才网
  • 全新升级网站手机虚拟机哪个好用
  • 石家庄网站建设外包公司排名网站开发 卓优科技
  • 用凡科做的网站保存不了网站seo外包公司有哪些
  • 万州集团网站建设装饰网站建设流程
  • 网站建设规划书结构网站没有做301定向
  • 活动策划网站源码建设公司网站有用吗
  • 内蒙古住房和建设厅网站php网站开发最低配置
  • 网站运营怎么学沈阳网站建设渠道
  • 更改网站备案负责人买域名去哪个网站好
  • 外贸网站推广教程网站建立风格
  • 石家庄h5网站建设有了源码怎么搭建网站
  • 如何选择丹徒网站建设英文网站怎么做外贸推广