Читать большой CSV в Java
Я хочу читать огромные данные из CSV, содержащие около 500 000 строк. Я использую библиотеку OpenCSV для этого. Мой код для этого так
CsvToBean<User> csvConvertor = new CsvToBean<User>();
List<User> list = null;
try {
list =csvConvertor.parse(strategy, new BufferedReader(new FileReader(filepath)));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
До 200 000 записей данные считываются в список объектов EJB. Но для данных больше, чем я получаю
java.lang.OutOfMemoryError: Java heap space
У меня есть этот параметр памяти в файле "eclipse.ini"
-Xms256m
-Xmx1024m
Я думаю, что решение разбить огромный файл на отдельные файлы и снова прочитать эти файлы, что я считаю длительным решением.
Есть ли другой способ, с помощью которого я могу избежать исключения OutOfMemoryError.