参见英文答案 >
How to format floating point numbers into a string using Go1
http://golang.org/pkg/strconv/
http://golang.org/pkg/strconv/
http://play.golang.org/p/4VNRgW8WoB
如何将浮点数转换为字符串格式?
这是谷歌操场,但没有得到预期的输出. (2e 07)
我想得到“21312421.213123”
package main import "fmt" import "strconv" func floattostr(input_num float64) string { // to convert a float number to a string return strconv.FormatFloat(input_num,'g',1,64) } func main() { fmt.Println(floattostr(21312421.213123)) // what I expect is "21312421.213123" in string format }
请帮我把字符串从浮点数中取出.谢谢
Try this
package main import "fmt" import "strconv" func FloatToString(input_num float64) string { // to convert a float number to a string return strconv.FormatFloat(input_num,'f',6,64) } func main() { fmt.Println(FloatToString(21312421.213123)) }
如果你只想要尽可能多的数位精度,那么特殊的精度-1使用最小的数字位数,使得ParseFloat将精确地返回f.例如
strconv.FormatFloat(input_num,-1,64)
我个人觉得fmt更容易使用. (Playground link)
fmt.Printf("x = %.6f\n",21312421.213123)
或者如果你只是想转换字符串
fmt.Sprintf("%.6f",21312421.213123)