0
Мне нужно найти подстроку в очень большом текстовом файле (5-10 ГБ). Что вы посоветуете мне для простой и быстрой обработки файлов такого размера?Найти подстроку в очень большом файле (javaSE)
UPD: Этот алгоритм поиска для слова в файле, но мне кажется, что врят будет легко обрабатывать большие файлы:
File textFile = new File("text.txt");
BufferedReader fileOut = new BufferedReader(new FileReader(textFile));
String s;
int a = 1;
while((s = fileOut.readLine()) != null) {
if(s.contains("findword"))
System.out.println(a + ": " + s);
a++;
}
fileOut.close();
Будете ли вы находить только одну подстроку, а потом? Или вы будете многократно извлекать строки из текста? –
@HovercraftFullOfEels Мне нужно найти слово в файле и вывести строку, содержащую слово. Например, myWordWhatIneed file.txt, и программа проходит через файлы и выходные строки, содержащие слово. После этого предложения повторного ввода файла слова и где искать – user3528927
Я бы предложил использовать Lucene, поэтому индексируйте файл и делайте то, что захотите. Это будет намного быстрее, чем другие тигры, и вы сможете делать более продвинутые вещи, чем просто. – Babl