Bonjour, je suis sur Netbeans et j'essaie de lire un fichier log d'un serveur d'application en temps réel. Alors, quelle est la méthode simple pour savoir qu'une nouvelle ligne a été insérée dans le fichier log afin d'éxecuter une action? en JAVA
Bonjour, je suis sur Netbeans et j'essaie de lire un fichier log d'un serveur d'application en temps réel. Alors, quelle est la méthode simple pour savoir qu'une nouvelle ligne a été insérée dans le fichier log afin d'éxecuter une action? en JAVA
Salut essaies ceci:
Eric
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 String[] args = new String[]{"messages.log"}; System.out.println(args); if (args.length > 0) { if (args.length > 1) sleepTime = Long.parseLong(args[1]) * 1000; BufferedReader input = new BufferedReader(new FileReader(args[0])); String currentLine = null; while (true) { if ((currentLine = input.readLine()) != null) { System.out.println(currentLine); continue; } try { Thread.sleep(sleepTime); } catch (InterruptedException e) { Thread.currentThread().interrupt(); break; } } input.close(); } else { System.out.println( "Missing parameter!\nUsage: java JavaTail fileName [updateTime (Seconds. default to 1 second)]"); }
Tu peux aussi regarder du côté du Watch Service API de java.nio.file
D'après Oracle :
C'est plus lourd que la solution de jeffray03 et je n'ai pas testé java.nio.file en production.The Watch Service API is designed for applications that need to be notified about file change events.
Mais cela a l'air prometteur dans la mesure où il devrait réagir à chaque changement dans le fichier log que tu veux surveiller.
Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)
Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/
Hello,
l'exemple de code que tu montres ne surveille aucun changement de fichier. Il lit le fichier tel qu'il est, une fois. Puis c'est fini, le fichier est oublié. Le programme tourne en boucle sans rien faire.
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager