gpt4 book ai didi

java相当于php "fnum"unpack函数将十六进制转换为java中的float IEEE 754

转载 作者:行者123 更新时间:2023-12-02 10:18:25 25 4
gpt4 key购买 nike

我在 PHP 中有这个函数:

function hex2float($strHex) {
$array = unpack("fnum", pack("H*", $strHex));
return $array['num'];
}

如何用java编写它?

最佳答案

我想以这种方式转换这个函数:

private Float hex2float(String hexStr) {
Float result = null;
try {
byte[] decodes = Hex.decodeHex(hexStr.toCharArray());
result = getFloat(decodes, 0);
} catch (DecoderException e) {
// log error
}
return result;
}

private float getFloat(byte[] b, int index) {
int l;
l = b[index + 0];
l &= 0xff;
l |= ((long) b[index + 1] << 8);
l &= 0xffff;
l |= ((long) b[index + 2] << 16);
l &= 0xffffff;
l |= ((long) b[index + 3] << 24);
return Float.intBitsToFloat(l);
}

关于java相当于php "fnum"unpack函数将十六进制转换为java中的float IEEE 754,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54513616/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com