将一个字节阵列转换为float64



我正在尝试将一个字节阵列转换为从文件中读取,实际上恰好是浮点。我可以继续使用strconv.ParseFloat,但是我想知道是否有任何实现此目的的>更快的方法,而不是此字符串转换开销?

以下片段来自另一篇文章:此处,但显然它对上述场景不起作用。

事先感谢您的建议。

package main
import (
"encoding/binary"
"fmt"
"math"
) 
func Float64frombytes(bytes []byte) float64 {
    bits := binary.LittleEndian.Uint64(bytes)
    float := math.Float64frombits(bits)
    return float
}

func main() {

    // This is read from a file, so its avaible as a byte array
    input := []byte("1.11")
    // This throws an exception obviously.
    float := Float64frombytes()   
    fmt.Println(float)
}

不,没有其他方法可以做到这一点。

您列出的无效替代方案的裸露是最好的方法如果 float直接将其存储在二进制中,但是由于它作为字符串strconv.ParseFloat是唯一的方法。<<<<<<<<<<<<<<<<<<<</p>

对不起。

最新更新