Я работаю над программой, которая загружает файлы и использует их информацию для заполнения класса Model
. Эти файлы могут иметь размер от нескольких килобайт до почти ГБ. Когда их размеры колеблются, так же и память, используемая классом Model
.Как предотвратить появление OutOfMemoryError от Java при загрузке файла?
Когда я загружаю файл, достаточно большой, я получаю OutOfMemoryError
.
Я могу отклонить запрос пользователя на загрузку файла (в зависимости от размера файла). Как просмотреть файл, определить его размер и определить, может ли приложение обрабатывать его?
Есть ли способ сделать это адаптированным к объему ОЗУ на компьютере пользователя?
Просто как будто. На основе 'RAM' вы можете разбить файл и загрузить его в память в куски и заполнить класс' model'. – Prateek
Попробуйте посмотреть на этот вопрос: [Использование Java, чтобы получить информацию о системе уровень ОС] [1] [1]: http://stackoverflow.com/questions/25552/using-java-to- get-os-level-system-information – BobbyD17
@Prateek Насколько мне нравится идея этого, я не думаю, что это файл, который перегружает кучу. Я думаю, что «Модель» становится слишком большой, поэтому ее разделение не будет иметь особого значения. – sdasdadas