Files
tp-java-fichiers/README.md
Vincent Guillet c3914e8169 first commit
2025-04-29 17:33:06 +02:00

2.2 KiB
Raw Permalink Blame History

EXO-JAVA-Manipulation de fichiers

Objectif

Créer une application de gestion de fichiers qui permet dexplorer et de maîtriser les différentes fonctionnalités de manipulation de fichiers en Java.

Énoncé

Partie 1 : Opérations de base sur les fichiers

  1. Créer une classe FileManager avec les méthodes suivantes :
    • createFile(String path) : Crée un nouveau fichier
    • deleteFile(String path) : Supprime un fichier existant
    • copyFile(String source, String destination) : Copie un fichier vers une nouvelle destination
    • moveFile(String source, String destination) : Déplace un fichier vers une nouvelle destination
    • listFiles(String directory) : Liste tous les fichiers dun répertoire
    • getFileInfo(String path) : Récupère les informations dun fichier (taille, date de création, etc.)
  2. Implémenter des méthodes de gestion des répertoires :
    • createDirectory(String path) : Crée un nouveau répertoire
    • deleteDirectory(String path) : Supprime un répertoire et son contenu
    • listDirectories(String path) : Liste tous les sous-répertoires
    • getDirectorySize(String path) : Calcule la taille totale dun répertoire

Partie 2 : Lecture et écriture de fichiers

  1. Créer une classe FileIO avec les méthodes :
    • readTextFile(String path) : Lit le contenu dun fichier texte
    • writeTextFile(String path, String content) : Écrit du contenu dans un fichier texte
    • appendToFile(String path, String content) : Ajoute du contenu à la fin dun fichier
    • readBinaryFile(String path) : Lit le contenu dun fichier binaire
    • writeBinaryFile(String path, byte[] data) : Écrit des données binaires dans un fichier
  2. Implémenter des méthodes de traitement avancé :
    • readFileByLines(String path) : Lit un fichier ligne par ligne
    • writeFileByLines(String path, List<String> lines) : Écrit un fichier ligne par ligne
    • readFileByChunks(String path, int chunkSize) : Lit un fichier par morceaux
    • compressFile(String source, String destination) : Compresse un fichier
    • decompressFile(String source, String destination) : Décompresse un fichier