Описание пакета strconv
Categories:
Числовые преобразования
Наиболее распространенными числовыми преобразованиями являются Atoi (строка в int) и Itoa (int в String).
i, err := strconv.Atoi(«-42»)
s := strconv.Itoa(-42)
Они предполагают десятичную систему счисления и тип Go int.
ParseBool, ParseFloat, ParseInt и ParseUint преобразуют строки в значения:
b, err := strconv.ParseBool(«true»)
f, err := strconv.ParseFloat(«3.1415», 64)
i, err := strconv.ParseInt(«-42», 10, 64)
u, err := strconv.ParseUint(«42», 10, 64)
Функции преобразования возвращают самый широкий тип (float64, int64 и uint64), но если аргумент size указывает более узкую ширину, результат может быть преобразован в этот более узкий тип без потери данных:
s := «2147483647» // самый большой int32
i64, err := strconv.ParseInt(s, 10, 32)
...
i := int32(i64)
FormatBool, FormatFloat, FormatInt и FormatUint преобразуют значения в строки:
s := strconv.FormatBool(true)
s := strconv.FormatFloat(3.1415, „E“, -1, 64)
s := strconv.FormatInt(-42, 16)
s := strconv.FormatUint(42, 16)
AppendBool, AppendFloat, AppendInt и AppendUint аналогичны, но добавляют отформатированное значение в целевой срез.
Преобразование строк
Quote и QuoteToASCII преобразуют строки в строчные литералы Go в кавычках. Последний гарантирует, что результатом будет строка ASCII, экранируя любой не-ASCII Unicode с помощью \u:
q := strconv.Quote(«Hello, 世界»)
q := strconv.QuoteToASCII(«Hello, 世界»)
QuoteRune и QuoteRuneToASCII похожи, но принимают руны и возвращают зацикленные литералы Go.
Unquote и UnquoteChar разъединяют литералы строк и рун Go.
Константы
const IntSize = intSize
IntSize - это размер в битах значения int или uint.
Переменные
var ErrRange = errors.New("значение вне диапазона")
ErrRange указывает, что значение выходит за пределы диапазона для целевого типа.
var ErrSyntax = errors.New("invalid syntax")
ErrSyntax указывает, что значение не имеет правильного синтаксиса для целевого типа.