繁体   English   中英

如何在 Node.js 中将 4 字节十六进制转换为浮点数

[英]How to convert 4 byte Hex to floating-point number in Node.js

我有四个字节的十六进制数据,我正在尝试将其转换为 Node.js 中的浮点数。

IE

0x58 0x86 0x6B 0x42 --> 58.8812
0x76 0xD6 0xE3 0x42 --> 113.9189
0x91 0x2A 0xB4 0x41 --> 22.52078

我试图从互联网上找到的不同功能进行转换,但不幸的是没有得到想要的结果。 https://www.scadacore.com/tools/programming-calculators/online-hex-converter/链接上,我通过输入十六进制字符串在“Float - Little Endian (DCBA)”单元格中获得了正确的值,但不知道如何在节点 js 中执行此操作。 我想也许我在寻找错误的东西,或者我理解错了。

谢谢你。

鉴于您有十六进制数据的字符串表示形式(例如,关于您的第一个示例'58866B42' ),请执行以下操作将其转换为浮点数:

let myNumber = Buffer.from(hexString, 'hex').readFloatLE()

readFloatLE中的LE代表L ittle E ndian

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM