Manipulation des octets d'un fichier binaire

Manipulation des octets d'un fichier binaire - Java - Programmation

Marsh Posté le 28-05-2007 à 16:15:39    

Salut tout le monde
 
je suis en train de me prendre la tête sur du code et avant que tout finisse dans un mur j'aurais besoin de votre aide !
 
je dispose d'un fichier binaire et je développe un parseur pour récupérer des données...
 
en gros tout fonctionne bien sauf quand je dois récupérer des entiers signés
 
j'ouvre mon fichier dans un BufferedInputStream et je crée un tableau de byte qui s'appelle buffer
 

Code :
  1. while(bytesRemaining>0)
  2. {
  3. buffer[bytesRead] = (byte) br.read();
  4. bytesRead ++;
  5. bytesRemaining --;
  6. }


 
ensuite je manipule les bytes et là je patine
 
pour lire un entier non signé sur 2 octets je fais comme ça :
 

Code :
  1. int value = ((((int)buffer[1])&0xff)<<8) + ((((int)buffer[0])&0xff)<<0);


 
mais comment je fais pour lire des entiers signés ?
 
bêtement je pensais que c'était comme ça mais j'aimerais avoir confirmation :
 

Code :
  1. int value = (((int)buffer[1])<<8) + ((((int)buffer[0])&0xff)<<0);


 
merci

Reply

Marsh Posté le 28-05-2007 à 16:15:39   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed