Go中的错误(* os.PathError)是什么?

Go中的错误(* os.PathError)是什么?,第1张

Go中的错误(* os.PathError)是什么?

os.Create
返回错误作为第二个返回值。错误本身是一个接口
type error interface { Error() string }
。碰巧具有
Error
方法的任何数据类型都将实现该接口并可以进行分配。

在大多数情况下,仅打印错误就足够了,但是在此示例中,您想

ENOSPC
显式处理(设备上不留空间)。该
os
包返回
*os.PathError
在这种情况下,错误的实现,如果你想对错误的访问更多的信息,即一切旁边
Error()string
,方法,你就必须把它转换。

该语句

e, ok :=err.(*os.PathError)
是类型断言。它将检查接口值是否
err
包含
*os.PathError
as具体类型,并将其返回。如果接口中存储了其他类型(可能有其他类型的
error
接口实现),则它将仅返回零值和false,即
nil,false
在这种情况下。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5476284.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-12
下一篇2022-12-12

发表评论

登录后才能评论

评论列表(0条)

    保存