golang-101-hacks(26)——io.Writer interface

羊羽shine · · 480 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

注:本文是对golang-101-hacks中文翻译

io.Reader 接口相对应的就是 io.Writer接口了

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

io.Reader相比,不需要考虑io.EOF 错误, Write方法很简单:

Compared to io.Reader, since you no need to consider io.EOF error, the process of Writemethod is simple:
err == nil 表示所有数据写入成功
(1) err == nil: All the data in p is written successfully;
(2) ' err != nil ': 表示p 中的数据部分或都没有写入成功。
(2) err != nil: The data in p is partially or not written at all.
查看下面的例子
Let's see an example:

package main

import (
        "log"
        "os"
)

func main() {
        f, err := os.Create("test.txt")
        if err != nil {
                log.Fatal(err)
        }
        defer f.Close()

        if _, err = f.Write([]byte{'H', 'E', 'L', 'L', 'O'}); err != nil {
                log.Fatal(err)
        }
}

执行程序,test.txt 被创建
After executing the program, the test.txt is created:

# cat test.txt
HELLO

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:羊羽shine

查看原文:golang-101-hacks(26)——io.Writer interface

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

480 次点击  
加入收藏 微博
上一篇:golang测试
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传