2015-11-12 6 views
3

У меня есть огромный файл со строками. Все строки должны быть добавлены в список в моем коде. Каков самый быстрый способ сделать это? Я нашел this, но я не знаю, как использовать его для чтения строки в строке.Самый быстрый способ чтения строки в строке

+0

в файле около 10.000.000 линий КСТАТИ – Exagon

+1

Возможная Дубликат [ Чтение больших файлов в Java] (http://stackoverflow.com/questions/2356137/read-large-files-in-java) –

+0

Вы хотите, чтобы все строки были прочитаны в списке? У вас достаточно памяти для этого? –

ответ

5

Я подозреваю, что встроенный в решение должно быть достаточно быстро:

List<String> allLines = Files.readAllLines(Paths.get("location/of/your/file")); 

(предполагается, что ваш JVM имеет достаточно памяти)

+0

это очень помогло. что, если мне нужно вызвать метод для каждого из этих строк в списке (конструктор) класса (String s), есть ли быстрый способ сделать это во всех в одном, а не генерировать этот список раньше? – Exagon

+0

@Exagon Вы пытаетесь создать 'Список ' на основе 'List '? Если да, это было предназначено только для этого списка, чтобы создать другой список, или вам нужно это еще где-то еще? – Pshemo

+0

yes thats the problem: \ right now Я решаю это как этот 'List list = Files.readAllLines (Paths.get (s)). ParallelStream(). Map (c -> new MyClass (c)). Collect (Collectors.toList()) ', но это занимает возраст – Exagon

Смежные вопросы