java.nio.BufferUnderflowException beim Konvertieren von Byte-Array in Double

8

Ich muss ein Bytearray in Double konvertieren. Ich benutze

%Vor%

Aber zur Laufzeit bekomme ich BufferUnderflowException Ausnahme

%Vor%

Was muss ich hier ändern?

    
Sushmita Bhattacharya 09.09.2014, 04:37
quelle

2 Antworten

10

ByteBuffer#getDouble() löst %Vor%

So value muss weniger als 8 Bytes enthalten. Ein double ist ein 64-Bit-, 8-Byte-Datentyp.

    
Sotirios Delimanolis 09.09.2014 04:43
quelle
1

Dein Code ist etwa so:

%Vor%

Wenn es dann ist, sollte es funktionieren.

Und zeigen Sie uns Ihre Daten von value array.

aus den Oracle Dokumenten :

%Vor%

Um es zu beheben, müssen Sie sicherstellen, dass ByteBuffer genug Daten enthält, um eine doppelte (8 bytes) zu lesen.

Schauen Sie Hier ist einfach Code, um zu zeigen, was Sie mit Eingabedaten und Ausgabe möchten.

    
user3145373 ツ 09.09.2014 04:43
quelle