Java IO- Gestion des fichiers en Java

1 - La classe File Java

La classe File Java  permet de gérer les fichiers, les noms de chemins de fichiers et de répertoires de manière abstraite. Cette classe est utilisée pour la création de fichiers et de répertoires, la recherche de fichiers, la suppression de fichiers, etc. Nous verrons plus loin dans les  prochains tutoriels que de nombreuses méthodes sont associées à cette classe.

Dans ce tutoriel, nous verrons comment créer un fichier en Java à l'aide de  la classe File et la méthode  createNewFile(). Cette méthode crée un fichier vide, s’il n’existe pas à l’emplacement spécifié et renvoie true. Si le fichier est déjà présent, cette méthode renvoie false.

IOException : Si une erreur d'entrée / sortie survient lors de la création du fichier.
SecurityException : Si un gestionnaire de sécurité existe et que sa méthode SecurityManager.checkWrite (java.lang.String) refuse l'accès en écriture au fichier.

Pour faire simple, nous allons essayer de créer un  simple fichier texte sur le bureau. Pour ce faire :

  1. On doit préalablement importer les bibliothèques File et IOException qui se trouvent dans le package java.io
  2. On fait une instanciation sur la classe File pour créer un nouveau objet myFile du type file
  3. On crée le fichier avec la méthode  createNewFile() ( myFile.createNewFile() )

2 - Création d'un fichier avec la classe File Java

Le code ci-dessous créerait un fichier txt nommé  newfile.txt dans le bureau de l'utilisateur acer. Vous pouvez modifier le chemin dans le code ci-dessous afin de créer le fichier dans un répertoire ou un lecteur différent.

import java.io.File;
import java.io.IOException;

public class NewFile
{
   public static void main( String[] args )
   {
	   try {
		     File myFile = new File("C:/Users/acer/Desktop/newFile.txt");
		     /* Si le fichier est créé, alors la méthode createNewFile() renverrait 
		      true et  si le fichier est déjà présent il retournerait faux */
		     
	             boolean varF = myFile.createNewFile();
		     if (varF){
		          System.out.println("Fichier crée avec succés");
		     }
		     else{
		          System.out.println("Le fichier existe déjà");
		     }
	    	} catch (IOException e) {
	    		System.out.println("Exception Occurred:");
		        e.printStackTrace();
		  }

   }
}

3 - Ecrire dans un fichier existant à l'aide de la classe  FileWriter

La classe FileWriter permet d'ouvrir un flux d'écriture sur un fichier via son constructeur  :

FileWriter( String nom_du_fichier, boolean append )
  1. Si la valeur du boolean append est mis à false, le contenu du fichier sera écrasé par le nouveau contenu
  2. Si la valeur du boolean append est mis à true, le nouveau contenu sera ajouté à l'ancien

Exemple

	try
	{
	    String filename= "C:/Users/acer/Desktop/newFile.txt";
	    FileWriter fw = new FileWriter(filename,true); 
		//la valeur true entraine l'ajout du nouveau contenu à l'ancien
	    fw.write("Voici le contenu qui va être ajouté au fichier ");//appends the string to the file
	    fw.close();
	}
	catch(IOException ioe)
	{
	    System.err.println("IOException: " + ioe.getMessage());
	}
}

4 - Supprimer un fichier existant avec la méthode delete()

Pour supprimer un fichier existant en Java, il suffit d'instancier la classe FileWriter et pointer vers le fichier, et appliquer ensuite la méthode delete() à l'objet :

	    String filename= "C:/Users/acer/Desktop/newFile.txt";
	    File myFile = new File(filename); 
	    myFile.delete();

 

Younes Derfoufi
CRMEF OUJDA

Leave a Reply