Xpoint
   [напомнить пароль]

прочитать содержимое файла снизу вверх

Метки: [без меток]
2007-08-29 13:37:37 [обр] ddd(0/36)[досье]

здравствуйте!

есть текстовой файл с содержимым разбитым на строки:
1111
2222
3333

надо прочитать файл в последовательности
333
222
111

построчно, без считывания файла целиком.

как можно сделать?

спасибо.

спустя 57 минут [обр] Thirteensmay(17/157)[досье]
Читаете размер файла, устанавливаете текущую позицию на конец, читаете посимвольно смещаясь к началу до обнаружения конца строки, таким образом считываете последнюю строку, далее в цикле с позиции начала предыдущей строки считываете все необходимые строки.
спустя 3 минуты [обр] Thirteensmay(17/157)[досье]
В принципе размер файла можно и не читать, там в функции позиционирования помоему была возможность установить сразу на конец. Задача не сложная, почитайте доку по функциям работы с файлами.
спустя 20 часов [обр] Степаныч(50/50)[досье]
Если файл не большой, то прочитать в массив. Ну а дальше понятно... :)
спустя 1 день [обр] ddd(0/36)[досье]
переместить курсор в конец файла можно без проблем, а что дальше?
как перейти на начало строки (есть ли штатная функция, а не искать символ конца строки), как при считывании строки переместиться вверх, а не вниз (опять-таки штатно, а не считать на сколько символов надо переместиться вверх) ?
спустя 34 минуты [обр] Привидение+(611/795)[досье]
нет, разумеется, нету. в чем можно САМОСТОЯТЕЛЬНО убедиться, прочитав документацию.
поэтому читать надо с конца блоками, фиксированной длины. и из этих блоков уже получать строки в скрипте и работать с ними.
спустя 27 минут [обр] ddd(0/36)[досье]

ладно, проще будет перевернуть файл и работать с ним нормально.

всем спасибо, тему можно прибить

Powered by POEM™ Engine Copyright © 2002-2005