登录
首页 >  Golang >  Go问答

如何使用 error.Is 检查错误类型是否为 strconv.NumError

来源:stackoverflow

时间:2024-02-29 11:51:28 320浏览 收藏

Golang小白一枚,正在不断学习积累知识,现将学习到的知识记录一下,也是将我的所得分享给大家!而今天这篇文章《如何使用 error.Is 检查错误类型是否为 strconv.NumError》带大家来了解一下##content_title##,希望对大家的知识积累有所帮助,从而弥补自己的不足,助力实战开发!


问题内容

我有这个错误

错误的类型为 ParseInt。如何检查此错误 我假设我会使用 errors.Is 但不确定在这种情况下我会如何做


正确答案


https://pkg.go.dev/[电子邮件受保护]#numerror

type numerror struct {
    func string // the failing function (parsebool, parseint, parseuint, parsefloat, parsecomplex)
    num  string // the input
    err  error  // the reason the conversion failed (e.g. errrange, errsyntax, etc.)
}

错误的类型为 parseint。

"parseint"“失败函数” 的名称,即返回错误的函数。实际的错误类型是 *strconv.numerror。您可以像这样检查它和函数名称:

if e, ok := err.(*strconv.NumError); ok && e.Func == "ParseInt" {
    // do xyz
}

今天关于《如何使用 error.Is 检查错误类型是否为 strconv.NumError》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

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