Comment convertir valeurs ASCII à double valeur?Convertir les valeurs ASCII à Valeur double
entrée (valeurs ASCII):
48, 48, 52, 56, 55, 57, 53, 57, 54, 49
sortie attendue (valeur double):
487.959,61
J'ai essayé comme ça, mais pas encore travaillé. Toute orientation est appréciée.
byte[] ascii = new byte[]{48, 48, 52, 56, 55, 57, 53, 57, 54, 49};
long lngAscii = ByteBuffer.wrap(ascii).getLong();
double result = lngAscii/100;
Log.i("result:", String.valueOf(result)); // result: 5.2085034998064304E16
Tout d'abord, que 'byte []' contient "HHRVUWSWTI" en ASCII. Deuxièmement, il est de 10 octets, un 'double 'est de 8 octets. Pourquoi attendez-vous cette valeur particulière? –
@ElliottFrisch Je pense que c'est une chaîne, et il attend la chaîne à lire "487.959,61" en ASCII. Notez que cette chaîne comporte 10 caractères. Bien sûr, il avait toujours les mauvaises valeurs pour cela. –
Voulez-vous dire «0x30,0x30,0x34,0x38,0x37,0x39,0x35,0x39,0x36,0x31»? Et comment êtes-vous censé savoir où le point décimal est censé aller? – EJP