Как преобразовать float в строку - PullRequest
0 голосов
/ 15 ноября 2018

Я читаю float из файла, и мне нужно будет преобразовать его в строку.Моя проблема здесь в том, что я не уверен, сколько цифр будет после десятичного числа.Мне нужно взять поплавок и преобразовать его в строку.

For ex: 
1.10 should be converted to "1.10"
Also,
1.5 should be converted to "1.5"
Can someone suggest how to go about this?

Ответы [ 2 ]

0 голосов
/ 15 ноября 2018

Преобразовать число с плавающей точкой в ​​строку

FormatFloat преобразует число f с плавающей запятой в строку, в соответствии с форматом fmt и точной точностью.Он округляет результат, предполагая, что оригинал был получен из значения с плавающей точкой bitSize битов (32 для float32, 64 для float64).

func FormatFloat (f float64, fmt byte, prec, bitSize int) string

f := 3.14159265
s := strconv.FormatFloat(f, 'E', -1, 64)
fmt.Println(s) 

Вывод «3.14159265»

Другой метод - использование fmt.Sprintf

s := fmt.Sprintf("%f", 123.456) 
fmt.Println(s)

Вывод «123.456000»

Проверка кода на игровая площадка

0 голосов
/ 15 ноября 2018

Использовать strconv.FormatFloat примерно так:

s := strconv.FormatFloat(3.1415, 'E', -1, 64)
fmt.Println(s)

Выходы

3.1415

...