在golang中对错误的处理,我这里是自己练习的总结。
1、将错误信息记录到日志里面
2、panic,然后利用recover函数进行异常捕获。(我这里仅仅是做了一个简单的例子,用来记录这个用法)
function A调用function B ,这里可以在 function A中使用recover也可以在function B中使用
*********************将日志信息保存到日志的代码****************************
//向登录日志里面写数据
//filename:为要保存日志的文件名
//content:为要向日志添加的内容
funcWrite_user_Info(filename,contentstring) {
file,err := os.OpenFile(filename,os.O_APPEND|os.O_RDWR|os.O_CREATE,0666)
iferr != nil {
log.Println("打开文件失败.....",err)
return
}
deferfile.Close()
usr_time := time.Now().Format("2006-01-02 15:04:05")
content = fmt.Sprint(usr_time," ",content,"\r\n")
_,err = file.WriteString(content)
iferr != nil {
log.Println("向日志中写数据失败.......",err)
return
}
}
*********************利用panic和recover函数****************************
funcTest_painc(T *testing.T) {
log.Println(getInt())
}
funcgetInt()int{
defer func()int{
iferr :=recover();err != nil {
log.Println(err)
}
log.Println("recover........continue")
return3
}()
log.Println("begin...........begin")
panic("hello panic")
}
有疑问加站长微信联系(非本文作者)