strconv.ParseBool() function can be used to parse a string representation of a bool.
https://golang.org/pkg/strconv/#ParseBool
Below is the signature of the function
func ParseBool(str string) (bool, error)
Let’s see a working code
package main
import (
"fmt"
"strconv"
)
func main() {
input := "true"
if val, err := strconv.ParseBool(input); err == nil {
fmt.Printf("%T, %v\n", val, val)
}
input = "false"
if val, err := strconv.ParseBool(input); err == nil {
fmt.Printf("%T, %v\n", val, val)
}
input = "garbage"
if val, err := strconv.ParseBool(input); err == nil {
fmt.Printf("%T, %v\n", val, val)
} else {
fmt.Println("Given input is not a bool")
}
}
Output:
bool, true
bool, false
Given input is not a bool