Lecture de lignes spécifiques à partir d'un fichier en Java
Récupérer des lignes spécifiques à partir d'un fichier peut être utile dans divers scénarios. Java offre plusieurs façons d'accomplir cette tâche, en particulier lorsque vous travaillez avec des fichiers petits et grands.
Petits fichiers
Si la taille du fichier est relativement petite, l'approche la plus simple consiste à lire l'intégralité du fichier en mémoire puis à accéder à la ligne souhaitée. Ceci peut être réalisé en utilisant la méthode Files.readAllLines() :
String line32 = Files.readAllLines(Paths.get("file.txt")).get(32);
Dans cet exemple, la partie Paths.get("file.txt") représente le chemin du fichier et readAllLines() lit l'intégralité de fichier et stocke chaque ligne sous forme de chaîne dans une liste. En utilisant get(32), nous pouvons accéder directement à la 32ème ligne de la liste.
Fichiers volumineux
Pour les fichiers volumineux, la lecture de l'intégralité du fichier en mémoire peut être inefficace. Dans de tels cas, la méthode Files.lines() peut être utilisée pour traiter le fichier ligne par ligne :
try (Stream<String> lines = Files.lines(Paths.get("file.txt"))) { line32 = lines.skip(31).findFirst().get(); }
Ici, Files.lines() crée un flux de lignes à partir du fichier. La méthode skip(31) ignore les 31 premières lignes et findFirst() récupère la 32ème ligne. Enfin, get() convertit la valeur facultative en chaîne.
Cette approche vous permet de parcourir efficacement le fichier et de récupérer la ligne souhaitée sans avoir à charger l'intégralité du fichier en mémoire.
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!