如何在Java中将十六进制字符串转换为单精度浮点数?
例如,如何实现:
float f = HexStringToFloat("BF800000"); // f 现在应该包含 -1.0
我询问此问题是因为我尝试过:
float f = (float)(-1.0);
String s = String.format("%08x", Float.floatToRawIntBits(f));
f = Float.intBitsToFloat(Integer.valueOf(s,16).intValue());
但我收到了以下异常:
java.lang.NumberFormatException: 输入字符串格式错误:"bf800000"