テストする次の基本的なコードがありますstrconv.Atoi()
。
package main
import (
"fmt"
"strconv"
)
func main() {
var a int
var b string
var err Error
b = "32"
a,err = strconv.Atoi(b)
fmt.Println(a)
fmt.Println(err)
}
strconv.Atoi()
にエラーがあった場合、具体的にはエラーが構文または範囲によるものであった場合、提供できる条件を処理したいと考えていstrconv.Atoi()
ます。そのために、私はこれを試しました:
package main
import (
"os"
"fmt"
"strconv"
)
func main() {
var a int
var b string
var err error
b = "32"
a,err = strconv.Atoi(b)
if(err.Err == ErrSyntax) {
fmt.Println("ERROR")
os.Exit(1)
}
fmt.Println(a)
fmt.Println(err)
}
そして、私はこれを結果として得ます:
% go build test.go
# command-line-arguments
./test.go:19:8: err.Err undefined (type error has no field or method Err)
./test.go:19:16: undefined: ErrSyntax
Atoi
返される 2 つのエラー ( ErrSyntax
、 )を処理する方法を理解したいと思いErrRange
ます。