Bonjour,
J'essaie de créér une fonction qui récupère le dernier fichier créé dans un répertoire. La petite difficulté (là ou je bloque) c'est qu'il faut qu'il récupère que les fichiers contenant un certain mot.
Donc voilà, j'ai écris ça
Quand je teste subfiled.lastModified() et moreRecentFile.lastModified() me renvoi la même valeur alors qu'il ne devrait pas.
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
33
34
35
36
37
38
39
40
41
42
43
44 String nom_utilisateur_windows = System.getProperty("user.name"); String directoryPath = "D:\\Profiles\\"+nom_utilisateur_windows+"\\Documents\\eve\\chatlogs"; File directory = new File(directoryPath); File moreRecentFile = null; if (!directory.exists()) { System.out.println("Le fichier/répertoire '" + directoryPath + "' n'existe pas"); } else if (!directory.isDirectory()) { System.out.println("Le chemin '" + directoryPath + "' correspond à un fichier et non à un répertoire"); } else { File[] subfiles = directory.listFiles(); System.out.println("Le répertoire '" + directoryPath + "' contient " + subfiles.length + " fichiers"); if( subfiles.length > 0){ moreRecentFile = subfiles[0]; for (int i = 0; i < subfiles.length; i++) { File subfile = subfiles[i]; String test =subfile.toString(); boolean test1 = test.contains("CO2.Scout"); System.out.println(test1); if(test1 == true){ File subfiled = subfiles[i]; System.out.println(subfiled.lastModified()); System.out.println(moreRecentFile.lastModified()); if (subfiled.lastModified() > moreRecentFile.lastModified()){ moreRecentFile = subfiled; System.out.println("Le fichier le plus récent du répertoire " + directoryPath + " est " + moreRecentFile.getName()); } } else{ System.out.println(test1); } } } else{ System.out.println("Le répertoire ne contient pas de fichiers!!!"); } }
Pouvez-vous m'aider?
merci par avance.
Partager