此代碼可以在此處運(yùn)行:https://play.golang.org/p/dX6dOzWS-Gxcachedirstring := "./cache"_, err = os.Stat(cachedirstring)if err != nil { if errors.Is(err, os.ErrNotExist) { fmt.Printf("%T\n", err) } os.Exit(1)}此輸出:*fs.PathError我知道從一本書(shū)中使用。我的問(wèn)題是,我怎么知道會(huì)返回(通過(guò)代碼,而不是搜索引擎)?errors.Is(err, os.ErrNotExist)errors.Is(err, os.ErrNotExist)true如何找到所有等于的目標(biāo)錯(cuò)誤?err
1 回答
子衿沉夜
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊
您當(dāng)然可以模擬哪些錯(cuò)誤。是做“紙上”:
檢查循環(huán)遍歷錯(cuò)誤鏈會(huì)做什么,當(dāng)錯(cuò)誤時(shí)。在其上調(diào)用解包方法。
對(duì)于每個(gè)錯(cuò)誤,請(qǐng)考慮它是否是針對(duì)目標(biāo)的,或者它是否實(shí)現(xiàn)了該方法并將為其返回 true。
==Is(error) bool
例如,如果該類(lèi)型具有正確的錯(cuò)誤代碼,則此行對(duì)該類(lèi)型為 true。errors.Is(..., os.ErrNoExist)syscall.Errno
- 1 回答
- 0 關(guān)注
- 116 瀏覽
添加回答
舉報(bào)
0/150
提交
取消
