Maison > Java > javaDidacticiel > Comment puis-je obtenir efficacement une liste de fichiers triés par date en Java ?

Comment puis-je obtenir efficacement une liste de fichiers triés par date en Java ?

Linda Hamilton
Libérer: 2024-11-28 14:53:11
original
281 Les gens l'ont consulté

How Can I Efficiently Get a Date-Sorted List of Files in Java?

Obtention d'une liste de fichiers triés par date en Java

Question :
Les développeurs rencontrent souvent le besoin de lister les fichiers dans un répertoire et triez-les en fonction de leur date de dernière modification. Une approche consiste à utiliser File.listFiles() et à trier la liste à l'aide de File.lastModified(). Cependant, existe-t-il une méthode plus efficace ?

Réponse :

L'approche la plus optimale consiste à exploiter un comparateur personnalisé en conjonction avec Arrays.sort().

File[] files = directory.listFiles();

Arrays.sort(files, new Comparator<File>() {
    public int compare(File f1, File f2) {
        return Long.valueOf(f1.lastModified()).compareTo(f2.lastModified());
    }
});
Copier après la connexion

Cette approche garantit que les fichiers sont triés par ordre chronologique, les fichiers les plus anciens apparaissant en premier. L'expression Long.valueOf(f1.lastModified()) convertit l'horodatage en un horodatage long, qui est ensuite comparé à l'aide de compareTo(). En utilisant l'interface Comparator, les fichiers sont triés avec élégance sans avoir besoin de classes d'assistance supplémentaires.

Il est crucial de noter que File.listFiles() ne garantit pas l'ordre des fichiers renvoyés. Par conséquent, il est nécessaire de trier explicitement le tableau à l'aide du comparateur fourni.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal