Ich benutze eine RandomAccessFile in Java 6, aber mit seltsamen Verhalten beim Lesen von Bytes.IndexOutofBounds bei Verwendung von Javas gelesenen Bytes
Mit folgendem Code, wo offset
und data
entsprechend initialisiert werden:
int offset;
byte data[];
randFile.readFully(data, offset, data.length);
bekomme ich folgenden Stack-Trace:
null
java.lang.IndexOutOfBoundsException
at java.io.RandomAccessFile.readBytes(Native Method)
at java.io.RandomAccessFile.read(RandomAccessFile.java:355)
at java.io.RandomAccessFile.readFully(RandomAccessFile.java:414)
ABER, mit den gleichen Werten von offset
und data
, die folgender (scheinbar identischer) Code funktioniert einwandfrei!
randFile.seek(offset);
for (int i = 0; i < (data.length); i += 1) {
data[i] = randFile.readByte();
}
Hat jemand Einblick in warum dies sein könnte?
Welcher Wert hat 'lesen offset'? – ssantos