Adloun

programmation Java (école d'ingénieur) · Chapitre 14 · Exercice de TD

Numéroter les lignes

Fichiers et flux · niveau 2

Énoncé

Écrire un programme qui recopie fable.txt dans fable-numerotee.txt en ajoutant devant chaque ligne son numéro, cadré à droite sur trois caractères et suivi de deux espaces. Les deux fichiers doivent être ouverts dans un seul try-avec-ressources.

Corrigé


Path source = Path.of("fable.txt"), cible = Path.of("fable-numerotee.txt");
try (BufferedReader in = Files.newBufferedReader(source, StandardCharsets.UTF_8);
     PrintWriter out = new PrintWriter(Files.newBufferedWriter(cible, StandardCharsets.UTF_8))) {
    String ligne;
    int n = 0;
    while ((ligne = in.readLine()) != null)
        out.printf("%3d  %s%n", ++n, ligne);
}

  1  La Cigale, ayant chanté
  2  Tout l'été,
  3  Se trouva fort dépourvue
  4  Quand la bise fut venue :
  5  Pas un seul petit morceau
  6  De mouche ou de vermisseau.

Les deux ressources sont séparées par un point-virgule dans les parenthèses du try ; elles sont fermées dans l'ordre inverse (d'abord out, puis in).

100 % gratuit

La suite du chapitre est sur Adloun

Exercice suivant et tuteur

Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant et tuteur →