Konvertieren Byte[] , int

Habe ich diese Methode wandelt eine signierte oder nicht signierte byte zu int ist, aber es nicht zurückgeben, was es soll, zurück. Kann jemand darauf hin, das Problem in dem code unten?

public int convertByteToInt(byte[] b){          
    int value= 0;
    for(int i=0;i<b.length;i++){                
    int n=(b[i]<0?(int)b[i]+256:(int)b[i])<<(8*i);             
        value+=n;
    }         
    return value;       
}

Bearbeitet :

Ich bin tatsächlich zu Lesen, eine wav-Datei zur Berechnung des SNR. der zurückgegebene Wert von der Konvertierung geben sollte etwas zwischen 0 und 255.
Die Anwendung sollte vergleichen, 2-Wellen-Datei, die auf das orignal und den anderen geändert wird, und berechnen Sie das SNR .

Können Sie wie..indent Sie Ihren code?
Sind Sie sicher, dass Sie nicht wollen, Integer.parseInt(new String(b))
Was bedeutet es zu geben? Haben Sie Beispiele?
überprüfen Sie dieses heraus: stackoverflow.com/questions/5399798/...

InformationsquelleAutor outellou | 2011-02-09

Schreibe einen Kommentar