Elcrian
Commander
- Registriert
- Feb. 2008
- Beiträge
- 2.493
Hallo,
weiß jemand wie man die read()-Methode des FileChannels aus der Java NIO-API mit Offset- und Zielwert korrekt benutzt? Die Methode erwartet ein ByteBuffer-Array, allerdings weiß ich weder wieso (i.e. wie der Algorithmus arbeitet), noch wie konkret das programmatisch umzusetzen ist.
Etwas in der Art:
Auch mit ByteBuffern denen man die komplette Channel-Größe zugewiesen hat (allocate(fChannel.size())
oder eben tausende ByteBuffer (passend zur filesize, angenommen ein BB speichert nur 8 Byte pro BB-Object) werfen allesamt einen NullPointer bei der read-Methode.
Die Docs helfen mir nicht.
weiß jemand wie man die read()-Methode des FileChannels aus der Java NIO-API mit Offset- und Zielwert korrekt benutzt? Die Methode erwartet ein ByteBuffer-Array, allerdings weiß ich weder wieso (i.e. wie der Algorithmus arbeitet), noch wie konkret das programmatisch umzusetzen ist.
Etwas in der Art:
Code:
ByteBuffer[] bb = new ByteBuffer[(int) fChannel.size()];
bb[0] = ByteBuffer.allocate( fChannel.size());
fChannel.read(bb, offsetAdress, endAdress);

Die Docs helfen mir nicht.