SORU
1 EKİM 2011, CUMARTESİ


Bir bayt dizisi java tamsayı veya bunun tersi dönüştürmek

Java bytearrays içine bazı verileri saklamak için istiyorum. Sayı başına 2 Bayt alabilir sayılar temelde sadece.

2 bayt bir bayt içine bir tamsayı dönüştürme ve bunun tersi nasıl bilmek istiyorum. Çözüm çok ama çoğu kodda ne olduğunu izah etme googeling buldum. Şeyler gerçekten basit bir açıklama sevinirim çok anlamıyorum değişen çok şey var.

CEVAP
1 EKİM 2011, CUMARTESİ


byte[] toByteArray(int value) {
     return  ByteBuffer.allocate(4).putInt(value).array();
}

byte[] toByteArray(int value) {
    return new byte[] { 
        (byte)(value >> 24),
        (byte)(value >> 16),
        (byte)(value >> 8),
        (byte)value };
}

int fromByteArray(byte[] bytes) {
     return ByteBuffer.wrap(bytes).getInt();
}

int fromByteArray(byte[] bytes) {
     return bytes[0] << 24 | (bytes[1] & 0xFF) << 16 | (bytes[2] & 0xFF) << 8 | (bytes[3] & 0xFF);
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • cosmicrocketman

    cosmicrocket

    17 NİSAN 2006
  • pilslajt

    pilslajt

    20 HAZİRAN 2008
  • placeboing

    placeboing

    7 Mart 2006