фонПредельное Android Размер файла
Веду относительно большой текстовый файл в андроида хранения, и добавление к нему periodically- ограничивая при этом размер файла до некоторого произвольного размера (скажем, 2MB)
Будем надеяться Я где-то пропускаю какую-либо функцию, или, надеюсь, есть лучший способ сделать этот процесс.
В настоящее время, когда файл a
выходит за этот произвольный размер, создать временный файл b
, скопируйте соответствующую часть файла a
(более или менее подстроки файла a
начиная с байта ххх, где ххх это номер слишком больших байтов файл a
был бы, если бы я записал следующий бит данных в журнал), плюс текущие данные, затем перезапишите файл a
со вторым файлом b
.
Это, очевидно, очень неэффективен ...
Другое решение, что я не очень люблю, чтобы держать два файла, и переключаться между двумя из них, очищая следующий, когда ток полон, и переход на этот файл для вывода.
Однако, было бы удобно, если suuuuuper я мог бы просто сделать что-то вроде этого
File A = new File("output");
A.chip(500);
или, может быть,
A.subfile(500,A.length()-500);
TLDR;
Есть ли функция или, возможно, библиотека, доступная для Android, которая может удалить часть файла?
вам нужно однако сохранить позицию текущего конца/старта в файле. – njzk2
отредактировал мой ответ, чтобы включить пример внедрения – Thomas
Aha! Я определенно пропустил класс RandomAccessFile, который помогает! Я реализовал метод переключения плюс этот метод, и он отлично работает! Спасибо вам за помощь. – wizebin