1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| /**
* Renvoie la représentation de l'int spécifié en tableau de byte
* (l'octet de poids faible se trouve à l'indice 0).
* @return la représentation de l'int spécifié en tableau de byte
*/
static final public byte[] intToBytes(int integer) {
byte[] bytes = new byte[4];
for(int i = 0; i < 4; i ++) {
bytes[i] = (byte) (integer % 256);
integer = integer >> 8;
}
return bytes;
}
/**
* Renvoie la représentation du long spécifié en tableau de byte
* (l'octet de poids faible se trouve à l'indice 0).
* @return la représentation du long spécifié en tableau de byte
*/
static final public byte[] longToBytes(long l) {
byte[] bytes = new byte[8];
for(int i = 0; i < 8; i ++) {
bytes[i] = (byte) (l % 256);
l = l >> 8;
}
return bytes;
}
/**
* Renvoie l'int représenté par le tableau de byte spécifié.
* @return l'int représenté par le tableau de byte spécifié
*/
static final public int bytesToInt(byte[] bytes) {
int integer = 0;
for(int i = 0; i < 4; i ++) {
integer += ((256 + bytes[i]) % 256) * (int)Math.pow(256, i);
}
return integer;
}
/**
* Renvoie le long représenté par le tableau de byte spécifié.
* @return le long représenté par le tableau de byte spécifié
*/
static final public long bytesToLong(byte[] bytes) {
long l = 0L;
for(int i = 0; i < 8; i ++) {
l += ((256 + bytes[i]) % 256) * (long)Math.pow(256, i);
}
return l;
} |
Partager