在 GoLang 中将字节切片“[]uint8”转换为 float64

我正在尝试将一个[]uint8字节切片转换为float64GoLang 中的一个。我在网上找不到这个问题的解决方案。我已经看到了先转换为字符串然后再转换为 a 的建议,float64但这似乎不起作用,它失去了它的价值,我最终得到了零。

例子:

metric.Value, _ = strconv.ParseFloat(string(column.Value), 64)

它不起作用......


SMILET
浏览 451回答 3
3回答

守着一只汪

例如,package mainimport (    "encoding/binary"    "fmt"    "math")func Float64frombytes(bytes []byte) float64 {    bits := binary.LittleEndian.Uint64(bytes)    float := math.Float64frombits(bits)    return float}func Float64bytes(float float64) []byte {    bits := math.Float64bits(float)    bytes := make([]byte, 8)    binary.LittleEndian.PutUint64(bytes, bits)    return bytes}func main() {    bytes := Float64bytes(math.Pi)    fmt.Println(bytes)    float := Float64frombytes(bytes)    fmt.Println(float)}输出:[24 45 68 84 251 33 9 64]3.141592653589793
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go