первый вопрос здесь!
Я пишу программу типа grep для Windows, просто для удовольствия (используя Mingw). Это хорошо работает для текстовых файлов, где строки заканчиваются символом '\n'. Я использую для этого fstream::getline().
Но мне также нужно иметь возможность искать файлы, содержащие только гигантский блок текста без номеров строк. fstream::getline() здесь не работает. Есть ли функция для чтения N символов в буфер из такого файла?
Кроме того, как лучше всего сообщить пользователю, где в таком файле было найдено совпадение?
grep
, работающий с файлом, содержащим только одну строку, просто выводит всю строку. Если вы хотите сделать что-то еще, все, что вы можете сделать, это сообщить пользователю, сколько символов в нем было. Проблема в том, что вам нужно принимать произвольные решения о том, когда вы перестанете считать это однострочным файлом, где вы будете выводить всю строку, и начнете рассматривать его как огромный блок. - person Cascabel   schedule 31.08.2009