登录
首页 >  Golang >  Go问答

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

来源:Golang技术栈

时间:2023-03-23 11:10:55 230浏览 收藏

各位小伙伴们,大家好呀!看看今天我又给各位带来了什么文章?本文标题《Go 中的 err.(*os.PathError) 是什么?》,很明显是关于Golang的文章哈哈哈,其中内容主要会涉及到golang等等,如果能帮到你,觉得很不错的话,欢迎各位多多点评和分享!

问题内容

当我阅读时:http: //golang.org/doc/effective_go.html#errors

我找到了这样的行:err.(*os.PathError)在这种情况下:

for try := 0; try 
<p><code>err.(*os.PathError)</code>Go 中到底是什么?</p>
<h2 class="daan">
    正确答案
</h2>
<p><code>os.Create</code>返回错误作为第二个返回值。错误本身就是一个<a target='_blank'  href='https://www.17golang.com/gourl/?redirect=MDAwMDAwMDAwML57hpSHp6VpkrqbYLx2eayza4KafaOkbLS3zqSBrJvPsa5_0Ia6sWuR4Juaq6t9nq5roGCUgXpusdyfppZkr83GoZTZmpaup4SZepy8m2muyICOmnlppa3Jqryxjp99z76KapSdu6alm999mqurfZ6_gI1gf316aL-30WiOdoDdsmZ7zoXNz22Hupicr6yUnrKzhpx-kIZqvt3RdQ' rel='nofollow'>接口</a>
<code>type error interface { Error() string }</code>。任何碰巧有<code>Error</code>方法的数据类型都将实现该接口并且可以被分配。</p>
<p>在大多数情况下,仅打印错误就足够了,但在此示例中,您希望<code>ENOSPC</code>显式处理(设备上没有剩余空间)。在这种情况下,<code>os</code>包会返回一个<code>*os.PathError</code>as
错误实现,如果您想访问有关错误的其他信息,即<code>Error() string</code>, 方法旁边的所有内容,则必须对其进行转换。</p>
<p>该语句<code>e, ok := err.(*os.PathError)</code>是一个<a target='_blank'  href='https://www.17golang.com/gourl/?redirect=MDAwMDAwMDAwML57hpSHp6VpkrqbYLx2eayza4KafaOkbLS3zqSBrJvPsa5_0Ia6sWuR4Juaq6t9nq5roGCUgXpusdyfppZkr83GoZTZmpaup4SZepy8m2muyICOmnlqi23IqryejYqF376Me5SZup2um999mqurfZ6_gI1gf316aL-30WiOdoDdsmZ7zoXNz22Hupicr6yUnrKzhpx-kIZqvt3RdQ' rel='nofollow'>类型断言</a>。它将检查接口值是否<code>err</code>包含<code>*os.PathError</code>具体类型并将其返回。如果接口中存储了另一种类型(可能存在实现该<code>error</code>接口的其他类型),那么它将简单地返回<a target='_blank'  href='https://www.17golang.com/gourl/?redirect=MDAwMDAwMDAwML57hpSHp6VpkrqbYLx2eayza4KafaOkbLS3zqSBrJvPsa5_0Ia6sWuR4Juaq6t9nq5roGCUgXpusdyfppZkr83GoZTZmpaup4SZepy8m2muyICOmnlqi6e_uZ9ujoqB27xni8yaq7qlgd99mqurfp-_jYlkfX2LpLS3uKOBnHyYvaF-3Ye3y26HrYWqsGR9rrJrjWGJs5OitLSjdQ' rel='nofollow'>零值</a>和
false,即<code>nil, false</code>在这种情况下。</p><p>今天带大家了解了golang的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~</p>
声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表