64bit - Java - Convert hex to IEEE-754 64-bit float - double precision

De openkb
Aller à : Navigation, rechercher

Sommaire

Questions

I m trying to convert the following hex string: "41630D54FFF68872" to 9988776.0 (float-64).

With a single precision float-32 I would do:

int intBits = Long.valueOf("hexFloat32", 16).intValue();
float floatValue = Float.intBitsToFloat(intBits);

but this throws a: java.lang.NumberFormatException: Infinite or NaN when using the 64-bits hex above.

How do I convert a hex to a double precision float encoded with IEEE-754 with 64 bits?

Thank you

Answers

You want double-precision, so Float isn t the right class - that s for single precision.

https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html#longBitsToDouble-long- https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html#longBitsToDouble-long-

Source

License : cc by-sa 3.0

http://stackoverflow.com/questions/6416269/java-convert-hex-to-ieee-754-64-bit-float-double-precision

Related

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Outils