Conversion bit en Double et histoires de signe
Bonjour,
J'ai un petit soucis de conversion. Voici ce qu'il en est.
Je me retrouve avec une chaîne de caractères représentant une série de 64 bits, par exemple :
"1001010100101011010100101001110110010101001010110101001010011101"
Je dois convertir cela en un Double (pour la petite histoire, je traitre des longitudes et lattitudes).
Naïvement, je suis parti dans cette optique :
Code:
1 2
| Long bits = Long.parseLong(bitString, 2); // bitString = ma chaine de bit
Double d = (Double.longBitsToDouble(bits)); |
Sauf que voila, la valeur correspondante a cette série de bits n'est pas interprétée comme étant signée, et forcement cette valeur est beaucoup trop grande pour etre parsée.
Comment puis-je faire pour obtenir le bon résultat dans ce cas ? Sachant que je n'ai pas d'autres alternative que de partir de cette chaîne de caractères représentant mon Double.