我有一个函数可以简单地读取带有ioutil.ReadFile(). 返回的类型是[]byte,尽管值本身可以表示为浮点数。我正在以[]byte这种方式转换(从读取文件的函数返回的位置在哪里)value:[]bytevar floatValue float64fmt.Fscanf(bytes.NewReader(value), "%f", &floatValue)这真的是从 a 中提取/解析有效浮点值的唯一方法吗[]byte?有一个类似的讨论,但看起来并没有真正取得任何进展。
1 回答
四季花海
TA贡献1811条经验 获得超5个赞
您可以轻松地使用strconv.ParseFloat
它,只需先将您的转换[]byte
为字符串即可。这肯定会比创建阅读器并使用scanf
类似功能进行扫描的开销更少。
sb := []byte("3.1415")
s := string(sb)
f, err := strconv.ParseFloat(s, 64)
if err != nil {
panic("whoops!")
}
fmt.Printf("%f\n", f)
输出:
3.141500
- 1 回答
- 0 关注
- 84 浏览
添加回答
举报
0/150
提交
取消