Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lire un fichier texte a l'envers

4 réponses
Avatar
Nicolas George
J'aimerais lire un fichier texte à l'envers : en commençant par la dernière
ligne, et en remontant. Conceptuellement, c'est très simple, il s'agit juste
de garder trace de l'offset à la main et de rajouter un seek adapté avant
chaque opération de lecture de bas niveau. Mais ça fait pas mal de code pas
très intéressant à écrire.

Est-ce qu'il y a un module tout fait qui fait ça ?

J'ai cherché sur le CPAN, en vain, mais ça ne veut rien dire parce que ce
n'est pas une requête facile à formuler.

4 réponses

Avatar
jl_morel
Dans l'article <djlnr7$s6g$, nicolas$ a
dit...

J'aimerais lire un fichier texte à l'envers : en commençant par la dernière
ligne, et en remontant. Conceptuellement, c'est très simple, il s'agit juste
de garder trace de l'offset à la main et de rajouter un seek adapté avant
chaque opération de lecture de bas niveau. Mais ça fait pas mal de code pas
très intéressant à écrire.

Est-ce qu'il y a un module tout fait qui fait ça ?

J'ai cherché sur le CPAN, en vain, mais ça ne veut rien dire parce que ce
n'est pas une requête facile à formuler.


File::ReadBackwards devrait faire l'affaire :

http://search.cpan.org/~uri/File-ReadBackwards-1.04/ReadBackwards.pm

--
J-L.M.
http://www.bribes.org/perl

Avatar
DoMinix
Nicolas George wrote:
J'aimerais lire un fichier texte à l'envers : en commençant par la dernière
ligne, et en remontant. Conceptuellement, c'est très simple, il s'agit juste
de garder trace de l'offset à la main et de rajouter un seek adapté avant
chaque opération de lecture de bas niveau. Mais ça fait pas mal de code pas
très intéressant à écrire.

Est-ce qu'il y a un module tout fait qui fait ça ?

J'ai cherché sur le CPAN, en vain, mais ça ne veut rien dire parce que ce
n'est pas une requête facile à formuler.


tu cherche l'equivalent de tac ou l'equivalent de
perl -e 'print reverse <>' fichier
?

--
dominix

Avatar
DoMinix
DoMinix wrote:
Nicolas George wrote:

J'aimerais lire un fichier texte à l'envers : en commençant par la dernière
ligne, et en remontant. Conceptuellement, c'est très simple, il s'agit juste
de garder trace de l'offset à la main et de rajouter un seek adapté avant
chaque opération de lecture de bas niveau. Mais ça fait pas mal de code pas
très intéressant à écrire.

Est-ce qu'il y a un module tout fait qui fait ça ?

J'ai cherché sur le CPAN, en vain, mais ça ne veut rien dire parce que ce
n'est pas une requête facile à formuler.



tu cherche l'equivalent de tac ou l'equivalent de
perl -e 'print reverse <>' fichier
?



ooups, j'ai posté trop vite je coyais que tac faisait
l'equivalent de
perl -e 'print reverse scalar( reverse <>)' fichier

mais encore une foi la lumiere vin du maitre, merci JLM :)

--
dominix


Avatar
Nicolas George
Jean-Louis MOREL wrote in message
<435e6c01$0$993$:
File::ReadBackwards devrait faire l'affaire :


Merci, ça a l'air d'être exactement ce que je veux.