|  | // Copyright 2015 The Go Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style | 
|  | // license that can be found in the LICENSE file. | 
|  |  | 
|  | package strconv_test | 
|  |  | 
|  | import ( | 
|  | "fmt" | 
|  | "log" | 
|  | "strconv" | 
|  | ) | 
|  |  | 
|  | func ExampleAppendBool() { | 
|  | b := []byte("bool:") | 
|  | b = strconv.AppendBool(b, true) | 
|  | fmt.Println(string(b)) | 
|  |  | 
|  | // Output: | 
|  | // bool:true | 
|  | } | 
|  |  | 
|  | func ExampleAppendFloat() { | 
|  | b32 := []byte("float32:") | 
|  | b32 = strconv.AppendFloat(b32, 3.1415926535, 'E', -1, 32) | 
|  | fmt.Println(string(b32)) | 
|  |  | 
|  | b64 := []byte("float64:") | 
|  | b64 = strconv.AppendFloat(b64, 3.1415926535, 'E', -1, 64) | 
|  | fmt.Println(string(b64)) | 
|  |  | 
|  | // Output: | 
|  | // float32:3.1415927E+00 | 
|  | // float64:3.1415926535E+00 | 
|  | } | 
|  |  | 
|  | func ExampleAppendInt() { | 
|  | b10 := []byte("int (base 10):") | 
|  | b10 = strconv.AppendInt(b10, -42, 10) | 
|  | fmt.Println(string(b10)) | 
|  |  | 
|  | b16 := []byte("int (base 16):") | 
|  | b16 = strconv.AppendInt(b16, -42, 16) | 
|  | fmt.Println(string(b16)) | 
|  |  | 
|  | // Output: | 
|  | // int (base 10):-42 | 
|  | // int (base 16):-2a | 
|  | } | 
|  |  | 
|  | func ExampleAppendQuote() { | 
|  | b := []byte("quote:") | 
|  | b = strconv.AppendQuote(b, `"Fran & Freddie's Diner"`) | 
|  | fmt.Println(string(b)) | 
|  |  | 
|  | // Output: | 
|  | // quote:"\"Fran & Freddie's Diner\"" | 
|  | } | 
|  |  | 
|  | func ExampleAppendQuoteRune() { | 
|  | b := []byte("rune:") | 
|  | b = strconv.AppendQuoteRune(b, '☺') | 
|  | fmt.Println(string(b)) | 
|  |  | 
|  | // Output: | 
|  | // rune:'☺' | 
|  | } | 
|  |  | 
|  | func ExampleAppendQuoteRuneToASCII() { | 
|  | b := []byte("rune (ascii):") | 
|  | b = strconv.AppendQuoteRuneToASCII(b, '☺') | 
|  | fmt.Println(string(b)) | 
|  |  | 
|  | // Output: | 
|  | // rune (ascii):'\u263a' | 
|  | } | 
|  |  | 
|  | func ExampleAppendQuoteToASCII() { | 
|  | b := []byte("quote (ascii):") | 
|  | b = strconv.AppendQuoteToASCII(b, `"Fran & Freddie's Diner"`) | 
|  | fmt.Println(string(b)) | 
|  |  | 
|  | // Output: | 
|  | // quote (ascii):"\"Fran & Freddie's Diner\"" | 
|  | } | 
|  |  | 
|  | func ExampleAppendUint() { | 
|  | b10 := []byte("uint (base 10):") | 
|  | b10 = strconv.AppendUint(b10, 42, 10) | 
|  | fmt.Println(string(b10)) | 
|  |  | 
|  | b16 := []byte("uint (base 16):") | 
|  | b16 = strconv.AppendUint(b16, 42, 16) | 
|  | fmt.Println(string(b16)) | 
|  |  | 
|  | // Output: | 
|  | // uint (base 10):42 | 
|  | // uint (base 16):2a | 
|  | } | 
|  |  | 
|  | func ExampleAtoi() { | 
|  | v := "10" | 
|  | if s, err := strconv.Atoi(v); err == nil { | 
|  | fmt.Printf("%T, %v", s, s) | 
|  | } | 
|  |  | 
|  | // Output: | 
|  | // int, 10 | 
|  | } | 
|  |  | 
|  | func ExampleCanBackquote() { | 
|  | fmt.Println(strconv.CanBackquote("Fran & Freddie's Diner ☺")) | 
|  | fmt.Println(strconv.CanBackquote("`can't backquote this`")) | 
|  |  | 
|  | // Output: | 
|  | // true | 
|  | // false | 
|  | } | 
|  |  | 
|  | func ExampleFormatBool() { | 
|  | v := true | 
|  | s := strconv.FormatBool(v) | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  |  | 
|  | // Output: | 
|  | // string, true | 
|  | } | 
|  |  | 
|  | func ExampleFormatFloat() { | 
|  | v := 3.1415926535 | 
|  |  | 
|  | s32 := strconv.FormatFloat(v, 'E', -1, 32) | 
|  | fmt.Printf("%T, %v\n", s32, s32) | 
|  |  | 
|  | s64 := strconv.FormatFloat(v, 'E', -1, 64) | 
|  | fmt.Printf("%T, %v\n", s64, s64) | 
|  |  | 
|  | // Output: | 
|  | // string, 3.1415927E+00 | 
|  | // string, 3.1415926535E+00 | 
|  | } | 
|  |  | 
|  | func ExampleFormatInt() { | 
|  | v := int64(-42) | 
|  |  | 
|  | s10 := strconv.FormatInt(v, 10) | 
|  | fmt.Printf("%T, %v\n", s10, s10) | 
|  |  | 
|  | s16 := strconv.FormatInt(v, 16) | 
|  | fmt.Printf("%T, %v\n", s16, s16) | 
|  |  | 
|  | // Output: | 
|  | // string, -42 | 
|  | // string, -2a | 
|  | } | 
|  |  | 
|  | func ExampleFormatUint() { | 
|  | v := uint64(42) | 
|  |  | 
|  | s10 := strconv.FormatUint(v, 10) | 
|  | fmt.Printf("%T, %v\n", s10, s10) | 
|  |  | 
|  | s16 := strconv.FormatUint(v, 16) | 
|  | fmt.Printf("%T, %v\n", s16, s16) | 
|  |  | 
|  | // Output: | 
|  | // string, 42 | 
|  | // string, 2a | 
|  | } | 
|  |  | 
|  | func ExampleIsGraphic() { | 
|  | shamrock := strconv.IsGraphic('☘') | 
|  | fmt.Println(shamrock) | 
|  |  | 
|  | a := strconv.IsGraphic('a') | 
|  | fmt.Println(a) | 
|  |  | 
|  | bel := strconv.IsGraphic('\007') | 
|  | fmt.Println(bel) | 
|  |  | 
|  | // Output: | 
|  | // true | 
|  | // true | 
|  | // false | 
|  | } | 
|  |  | 
|  | func ExampleIsPrint() { | 
|  | c := strconv.IsPrint('\u263a') | 
|  | fmt.Println(c) | 
|  |  | 
|  | bel := strconv.IsPrint('\007') | 
|  | fmt.Println(bel) | 
|  |  | 
|  | // Output: | 
|  | // true | 
|  | // false | 
|  | } | 
|  |  | 
|  | func ExampleItoa() { | 
|  | i := 10 | 
|  | s := strconv.Itoa(i) | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  |  | 
|  | // Output: | 
|  | // string, 10 | 
|  | } | 
|  |  | 
|  | func ExampleParseBool() { | 
|  | v := "true" | 
|  | if s, err := strconv.ParseBool(v); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  |  | 
|  | // Output: | 
|  | // bool, true | 
|  | } | 
|  |  | 
|  | func ExampleParseFloat() { | 
|  | v := "3.1415926535" | 
|  | if s, err := strconv.ParseFloat(v, 32); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  | if s, err := strconv.ParseFloat(v, 64); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  |  | 
|  | // Output: | 
|  | // float64, 3.1415927410125732 | 
|  | // float64, 3.1415926535 | 
|  | } | 
|  |  | 
|  | func ExampleParseInt() { | 
|  | v32 := "-354634382" | 
|  | if s, err := strconv.ParseInt(v32, 10, 32); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  | if s, err := strconv.ParseInt(v32, 16, 32); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  |  | 
|  | v64 := "-3546343826724305832" | 
|  | if s, err := strconv.ParseInt(v64, 10, 64); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  | if s, err := strconv.ParseInt(v64, 16, 64); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  |  | 
|  | // Output: | 
|  | // int64, -354634382 | 
|  | // int64, -3546343826724305832 | 
|  | } | 
|  |  | 
|  | func ExampleParseUint() { | 
|  | v := "42" | 
|  | if s, err := strconv.ParseUint(v, 10, 32); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  | if s, err := strconv.ParseUint(v, 10, 64); err == nil { | 
|  | fmt.Printf("%T, %v\n", s, s) | 
|  | } | 
|  |  | 
|  | // Output: | 
|  | // uint64, 42 | 
|  | // uint64, 42 | 
|  | } | 
|  |  | 
|  | func ExampleQuote() { | 
|  | s := strconv.Quote(`"Fran & Freddie's Diner	☺"`) // there is a tab character inside the string literal | 
|  | fmt.Println(s) | 
|  |  | 
|  | // Output: | 
|  | // "\"Fran & Freddie's Diner\t☺\"" | 
|  | } | 
|  |  | 
|  | func ExampleQuoteRune() { | 
|  | s := strconv.QuoteRune('☺') | 
|  | fmt.Println(s) | 
|  |  | 
|  | // Output: | 
|  | // '☺' | 
|  | } | 
|  |  | 
|  | func ExampleQuoteRuneToASCII() { | 
|  | s := strconv.QuoteRuneToASCII('☺') | 
|  | fmt.Println(s) | 
|  |  | 
|  | // Output: | 
|  | // '\u263a' | 
|  | } | 
|  |  | 
|  | func ExampleQuoteRuneToGraphic() { | 
|  | s := strconv.QuoteRuneToGraphic('☺') | 
|  | fmt.Println(s) | 
|  |  | 
|  | s = strconv.QuoteRuneToGraphic('\u263a') | 
|  | fmt.Println(s) | 
|  |  | 
|  | s = strconv.QuoteRuneToGraphic('\u000a') | 
|  | fmt.Println(s) | 
|  |  | 
|  | s = strconv.QuoteRuneToGraphic('	') // tab character | 
|  | fmt.Println(s) | 
|  |  | 
|  | // Output: | 
|  | // '☺' | 
|  | // '☺' | 
|  | // '\n' | 
|  | // '\t' | 
|  | } | 
|  |  | 
|  | func ExampleQuoteToASCII() { | 
|  | s := strconv.QuoteToASCII(`"Fran & Freddie's Diner	☺"`) // there is a tab character inside the string literal | 
|  | fmt.Println(s) | 
|  |  | 
|  | // Output: | 
|  | // "\"Fran & Freddie's Diner\t\u263a\"" | 
|  | } | 
|  |  | 
|  | func ExampleQuoteToGraphic() { | 
|  | s := strconv.QuoteToGraphic("☺") | 
|  | fmt.Println(s) | 
|  |  | 
|  | s = strconv.QuoteToGraphic("This is a \u263a	\u000a") // there is a tab character inside the string literal | 
|  | fmt.Println(s) | 
|  |  | 
|  | s = strconv.QuoteToGraphic(`" This is a ☺ \n "`) | 
|  | fmt.Println(s) | 
|  |  | 
|  | // Output: | 
|  | // "☺" | 
|  | // "This is a ☺\t\n" | 
|  | // "\" This is a ☺ \\n \"" | 
|  | } | 
|  |  | 
|  | func ExampleUnquote() { | 
|  | s, err := strconv.Unquote("You can't unquote a string without quotes") | 
|  | fmt.Printf("%q, %v\n", s, err) | 
|  | s, err = strconv.Unquote("\"The string must be either double-quoted\"") | 
|  | fmt.Printf("%q, %v\n", s, err) | 
|  | s, err = strconv.Unquote("`or backquoted.`") | 
|  | fmt.Printf("%q, %v\n", s, err) | 
|  | s, err = strconv.Unquote("'\u263a'") // single character only allowed in single quotes | 
|  | fmt.Printf("%q, %v\n", s, err) | 
|  | s, err = strconv.Unquote("'\u2639\u2639'") | 
|  | fmt.Printf("%q, %v\n", s, err) | 
|  |  | 
|  | // Output: | 
|  | // "", invalid syntax | 
|  | // "The string must be either double-quoted", <nil> | 
|  | // "or backquoted.", <nil> | 
|  | // "☺", <nil> | 
|  | // "", invalid syntax | 
|  | } | 
|  |  | 
|  | func ExampleUnquoteChar() { | 
|  | v, mb, t, err := strconv.UnquoteChar(`\"Fran & Freddie's Diner\"`, '"') | 
|  | if err != nil { | 
|  | log.Fatal(err) | 
|  | } | 
|  |  | 
|  | fmt.Println("value:", string(v)) | 
|  | fmt.Println("multibyte:", mb) | 
|  | fmt.Println("tail:", t) | 
|  |  | 
|  | // Output: | 
|  | // value: " | 
|  | // multibyte: false | 
|  | // tail: Fran & Freddie's Diner\" | 
|  | } | 
|  |  | 
|  | func ExampleNumError() { | 
|  | str := "Not a number" | 
|  | if _, err := strconv.ParseFloat(str, 64); err != nil { | 
|  | e := err.(*strconv.NumError) | 
|  | fmt.Println("Func:", e.Func) | 
|  | fmt.Println("Num:", e.Num) | 
|  | fmt.Println("Err:", e.Err) | 
|  | fmt.Println(err) | 
|  | } | 
|  |  | 
|  | // Output: | 
|  | // Func: ParseFloat | 
|  | // Num: Not a number | 
|  | // Err: invalid syntax | 
|  | // strconv.ParseFloat: parsing "Not a number": invalid syntax | 
|  | } |