Мне нужно открыть файл размером 12 Мегабайт, но на самом деле я делаю это, создавая буфер размером 12834566 байт, потому что размер файла составляет 12 МБ, и я разрабатываю это приложение для мобильных систем Android.
Затем, я полагаю, мне нужно читать с блоками по 1024 Кбайт вместо одного блока по 12 Мбайт с символом for, но я не знаю, как это сделать, мне нужна небольшая помощь.
Это мой фактический код:
File f = new File(getCacheDir()+"/berlin.mp3");
if (!f.exists()) try {
InputStream is = getAssets().open("berlin.mp3");
int size = is.available();
byte[] buffer = new byte[size];
is.read(buffer);
is.close();
FileOutputStream fos = new FileOutputStream(f);
fos.write(buffer);
fos.close();
} catch (Exception e) { throw new RuntimeException(e); }
Пожалуйста, кто-нибудь может сказать мне, что я должен изменить в этом коде, чтобы читать блоки размером 1024 КБ вместо одного блока по 12 МБ?
спасибо!