登录
首页 >  Golang >  Go问答

保证在读到文件结尾之前读取固定数量字节的接口是什么?

来源:stackoverflow

时间:2024-03-13 23:00:26 488浏览 收藏

哈喽!大家好,很高兴又见面了,我是golang学习网的一名作者,今天由我给大家带来一篇《保证在读到文件结尾之前读取固定数量字节的接口是什么?》,本文主要会讲到等等知识点,希望大家一起学习进步,也欢迎大家关注、点赞、收藏、转发! 下面就一起来看看吧!

问题内容

根据io.reader的文档,它说。

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

...

Read reads up to len(p) bytes into p. It returns the number of bytes read (0 <= n <= len(p)) and any error encountered.

这里不太清楚 n 的意思。这是否意味着除非达到 eof,否则要读取的字节数?或者它只是意味着上限或即使未达到 eof 也要读取的字节数?

有人能解释一下这是什么吗?谢谢。


解决方案


约定是 Read 最多将 len(p) 字节读入缓冲区。

如果它可以读取所有 len(p) 字节,则 n=len(p)

如果读取较少(因为到达文件末尾,或者因为底层实现仅返回缓冲数据),则 n 将较少。它可以是 0。

Read 是即使 err!=nil 也返回有意义结果的函数之一。如果读取因到达文件末尾而停止,则可能会返回读取的字节数和 io.EOF。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>