gpt4 book ai didi

go - 此错误处理的工作方式。 CSV文件读写盒

转载 作者:行者123 更新时间:2023-12-01 21:16:36 25 4
gpt4 key购买 nike

我正在学习如何在Go中读写CSV文件和错误处理。
我发现了一个查询,我不理解它的答案。
Using Golang to read csv, reorder columns then write result to a new csv with Concurrency
答案是

for line, err: = reader.Read (); err == nil; line, err = reader.Read () {
if err = writer.Write ([] string {line [col_index [0]], line [col_index [1]], line [col_index [2]]}); err! = nil {
fmt.Println ("Error:", err)
break
}
writer.Flush ()
}
为什么错误等于writer.Write()的返回值?
我只看过
err! = nil {
fmt.Println ("Error:", err)
break
}
你能给我解释一下吗?
谢谢!

最佳答案

您应该阅读直到该行的结尾,这是一个if statement,在比较之前执行了赋值。
缩短Write调用,这是:

if err = writer.Write(...); err != nil {
这首先将 writer.Write的返回值分配给 err,然后将其与nil进行比较。
重要说明:等于运算符是 ==,而不是 =
另一个注意事项:您应该在代码上运行 gofmt!=:=中间不应有空格。实际上,您的空间无处不在。

关于go - 此错误处理的工作方式。 CSV文件读写盒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63641383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com