首页 > 后端开发 > Golang > 如何使用 error.Is 检查错误是否为 strconv.NumError

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

WBOY
发布: 2024-02-06 09:42:13
转载
1062 人浏览过

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

问题内容

我有这个错误

错误的类型为 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的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:stackoverflow.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板