Wie kann ich Byte-Array mit Arrays.copyOfRange
mit langen Parametern 'schneiden'?Arrays.copyOfRange (byte [], lang, lang)? in Java
EDIT: Ich brauche
int size = f.length()
wirft zu schneiden Datei (nicht größer als 2 GB) vom Byte-Index bis zum Ende der Datei (byte [] Länge.): inkompatible Typen: mögliche verlustbehaftete Umwandlung von lang int (auch wenn die Datei 600kB ist)
File f = new File("path-to-file");
byte[] bytes = Files.readAllBytes(f.toPath());
long indexToCutFrom = a_long_number;
long indexToCutTo = f.length() - 1;
// method with these parameters does not exists
byte[] cuttedBytes = Arrays.copyOfRange(bytes, indexToCutFrom, indexToCutTo);
Wie haben Sie ein Array mit mehr als 'Integer.MAX_VALUE' Elementen? – bradimus
Arrays sind auf eine Länge von "Integer.MAX_VALUE" begrenzt, also 2^32 -1. Keine Notwendigkeit von "lang" hier. Kurz gesagt, Sie können nicht, weil Sie nicht brauchen – AxelH
@bradimus gibt es 'Unsafe', die das tun können – Eugene