为了账号安全,请及时绑定邮箱和手机立即绑定

处理go中的多个错误

处理go中的多个错误

Go
蝴蝶不菲 2021-06-03 18:25:11
我是新手,发现错误处理非常冗长。我已经阅读了它的推理并且大部分都同意,但是有一些地方似乎有更多的代码来处理错误而不是实际执行的工作。这是一个(人为的)示例,我在其中输入“Hello world!” 进入 cat 并读取并打印输出。基本上每一行都有另外三个来处理错误,我什至没有真正处理任何事情。package mainimport "fmt"import "io"import "io/ioutil"import "os/exec"func main() {    cmd := exec.Command("cat", "-")    stdin, err := cmd.StdinPipe()    if err != nil {        return    }    stdout, err := cmd.StdoutPipe()    if err != nil {        return    }    err = cmd.Start()    if err != nil {        return    }    _, err = io.WriteString(stdin, "Hello world!")    if err != nil {        return    }    err = stdin.Close();    if err != nil {        return    }    output, err := ioutil.ReadAll(stdout)    if err != nil {        return    }    fmt.Println(string(output))    return}有没有一种惯用的、干净的方法来处理这个问题?我只是觉得我错过了一些东西。
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 189 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号