Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как прочитать последние х строк из файла 
:(
    Опции темы
sol78
Дата 14.7.2010, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 366
Регистрация: 7.7.2007

Репутация: 1
Всего: 0



Как прочитать последние х строк из файла?
PM MAIL   Вверх
xvr
Дата 14.7.2010, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Выбирайте:
  •  Прочитать все, оставить последние x
  •  Прочитать блок (достаточного размера) с конца файла, отбросить в нем первую (возможно не полную) строку, остальные пересчитать - если их больше x - то см п1, если меньше - то увеличить 'достаточный размер' и повторить
  •  Отмэпить файл в память, далее по мотивам п2
  •  Отмэпить файл в память, отсчитать x строк с конца поиском по памяти снизу вверх

PM MAIL   Вверх
sol78
Дата 14.7.2010, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 366
Регистрация: 7.7.2007

Репутация: 1
Всего: 0



а можно ли читать построчно с конца файла?

Добавлено через 1 минуту и 46 секунд
xvr, а что бы вы посоветовали?

PM MAIL   Вверх
djamshud
Дата 14.7.2010, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 8
Всего: 39



sol78, с конца можно читать посимвольно, но это медленно. Могу добавить еще пятый (плохой, хотя если заведомо известно, что файл небольшой, то хороший) вариант: прочитать все в память и действовать как в п.4. Проще всего - п.1. и п.5, самый эффективный, на мой взляд, п.4.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
sol78
Дата 14.7.2010, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 366
Регистрация: 7.7.2007

Репутация: 1
Всего: 0



djamshud,  можите накидать код по 4 п.?
PM MAIL   Вверх
xvr
Дата 14.7.2010, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Цитата(sol78 @ 14.7.2010,  12:05)
а можно ли читать построчно с конца файла?

Нет
Цитата

Добавлено @ 12:07
xvr, а что бы вы посоветовали?
Зависит от размеров файла. Для маленьких - п1, для больших - п3 или 4, для переносимости - п2

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0626 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.