lire un fichier texte en flux continu ligne par ligne ? ( fonction tail sous unix)
1 réponse
Vincent
Bonjour,
J'ai un fichier qui est rempli au fil de l'eau par un programme. (c'est un
fichier de log)
Avec une autre appli ( en C# of course ) j'aimerai afficher les données du
fichier à mesure qu'elles arrivent
( pour être précis, récupérer toute nouvelle ligne, non pas caractère par
caraxtère).
Est ce possible sans avoir à ouvrir/lire/fermer toutes les secondes ce
fichier ?
( surtout s'il devient volumineux, en évitant des conflits d'acces et autre
soucis ?)
Ca ressemble un peu à une fonction "tail" sous unix
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilles TOURREAU
Le Wed, 14 Feb 2007 09:38:32 +0100, Vincent a écrit:
Bonjour,
J'ai un fichier qui est rempli au fil de l'eau par un programme. (c'est un fichier de log) Avec une autre appli ( en C# of course ) j'aimerai afficher les données du fichier à mesure qu'elles arrivent ( pour être précis, récupérer toute nouvelle ligne, non pas caractère par caraxtère). Est ce possible sans avoir à ouvrir/lire/fermer toutes les secondes ce fichier ? ( surtout s'il devient volumineux, en évitant des conflits d'acces et autre soucis ?)
Ca ressemble un peu à une fonction "tail" sous unix
une idée ?
Merci
Vincent
Vous pouvez :
1/Utiliser le remoting .NET pour faire communiquer vos applications afin de "notifier" l'écriture d'information dans votre fichier log...
2/Utiliser un FileSystemWatcher avec l'événement Changed qui indique qu'un fichier à changé...
Pour info : Il faut garder en mémoire (pour l'application qui lit le fichier), la position de lecture du fichier...
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr
Le Wed, 14 Feb 2007 09:38:32 +0100, Vincent
<vincent31spamaoter@wanadoo.fr> a écrit:
Bonjour,
J'ai un fichier qui est rempli au fil de l'eau par un programme. (c'est
un
fichier de log)
Avec une autre appli ( en C# of course ) j'aimerai afficher les données
du
fichier à mesure qu'elles arrivent
( pour être précis, récupérer toute nouvelle ligne, non pas caractère par
caraxtère).
Est ce possible sans avoir à ouvrir/lire/fermer toutes les secondes ce
fichier ?
( surtout s'il devient volumineux, en évitant des conflits d'acces et
autre
soucis ?)
Ca ressemble un peu à une fonction "tail" sous unix
une idée ?
Merci
Vincent
Vous pouvez :
1/Utiliser le remoting .NET pour faire communiquer vos applications afin
de "notifier" l'écriture d'information dans votre fichier log...
2/Utiliser un FileSystemWatcher avec l'événement Changed qui indique qu'un
fichier à changé...
Pour info :
Il faut garder en mémoire (pour l'application qui lit le fichier), la
position de lecture du fichier...
Le Wed, 14 Feb 2007 09:38:32 +0100, Vincent a écrit:
Bonjour,
J'ai un fichier qui est rempli au fil de l'eau par un programme. (c'est un fichier de log) Avec une autre appli ( en C# of course ) j'aimerai afficher les données du fichier à mesure qu'elles arrivent ( pour être précis, récupérer toute nouvelle ligne, non pas caractère par caraxtère). Est ce possible sans avoir à ouvrir/lire/fermer toutes les secondes ce fichier ? ( surtout s'il devient volumineux, en évitant des conflits d'acces et autre soucis ?)
Ca ressemble un peu à une fonction "tail" sous unix
une idée ?
Merci
Vincent
Vous pouvez :
1/Utiliser le remoting .NET pour faire communiquer vos applications afin de "notifier" l'écriture d'information dans votre fichier log...
2/Utiliser un FileSystemWatcher avec l'événement Changed qui indique qu'un fichier à changé...
Pour info : Il faut garder en mémoire (pour l'application qui lit le fichier), la position de lecture du fichier...