错误 | errors
Package errors
import "errors"
概述
索引
示例
概述
Errors 包实现了处理错误的函数。
示例
package main
import (
"fmt"
"time"
)
//MyError是一个包含时间和消息的错误实现。
type MyError struct {
When time.Time
What string
}
func (e MyError) Error() string {
return fmt.Sprintf("%v: %v", e.When, e.What)
}
func oops() error {
return MyError{
time.Date(1989, 3, 15, 22, 30, 0, 0, time.UTC),
"the file system has gone away",
}
}
func main() {
if err := oops( err != nil {
fmt.Println(err)
}
}
索引
- func New(text string) error
示例
Package New New (Errorf)
文件包
func New(查看源代码)
func New(text string) error
New 返回格式为给定文本的错误。
示例
package main
import (
"errors"
"fmt"
)
func main() {
err := errors.New("emit macho dwarf: elf header corrupted")
if err != nil {
fmt.Print(err)
}
}
示例(Errorf)
fmt 包的 Errorf 函数使我们可以使用包的格式化功能来创建描述性错误消息。
package main
import (
"fmt"
)
func main() {
const name, id = "bimmler", 17
err := fmt.Errorf("user %q (id %d) not found", name, id)
if err != nil {
fmt.Print(err)
}
}