Vous êtes sur la page 1sur 2

Session Automne 2023

Flux et fichiers de données


Les fichiers et répertoires sont gérés en Java en utilisant la classe File du paquetage java.io
Un objet de la classe File est une représentation abstraite et logique d'un fichier ou d'un
répertoire, qui correspond ou non à un fichier physique. Une méthode spéciale
exits() adressée à un objet File permet justement de tester son existence physique.

Pour construire un objet de type File, on utilise le constructeur qui prend en paramètre le
chemin complet du fichier physiquement enregistré sur le disque, passé en chaine de
caractères.
File fichier = new File("monTexte.txt")

Exemple simple

La classe EcrireLireTexte permet de stocker la chaine nommée texte1 dans le


fichier essai.txt, puis de lire ce même fichier et d'afficher son contenu.

import java.io.*;
class EcrireLireTexte {
public static void main(String[] args) throws IOException
{
FileWriter fluxEcriture;
FileReader fluxLecture;
String texte1="Bonjour !\nVoici un premier texte à enregistrer dans un
fichier ..\n\n J'espère que l'étude de JAVA vous intéresse et que vous\n
n'hésitez pas à me faire part de vos remarques et de vos questions";
String message="";
int car;
// création du flux en écriture dans le fichier essai1.txt
fluxEcriture = new FileWriter("essai1.txt");
// écriture de la chaine texte1 dans ce flux donc dans le fichier
fluxEcriture.write(texte1);
// puis fermeture du fichier
fluxEcriture.close();
fluxEcriture = new FileWriter("copie-essai1.txt");
// création du flux en lecture dans essai1.txt
fluxLecture = new FileReader("essai1.txt");
/* lecture dans essai1.txt des entiers jusqu'à -1
* écriture dans le flux vers le fichier copie-essai1.txt
* écriture dans message des caractères obtenus par cast des entiers lus
*/

while ( (car = fluxLecture.read()) != -1 ) {


fluxEcriture.write(car);
message += (char) car ;
}
// affichage de message
System.out.println (message);
// fermeture des flux
fluxEcriture.close();
fluxLecture.close();
}
}
Programmation Orientée Objets Avancée Page 1
Session Automne 2023

Exemple pour lire ligne par ligne

import java.io.*;
class LireLigne
{
public static void main(String[] argv) throws IOException
{
BufferedReader lecteurAvecBuffer = null;
String ligne;
try
{
lecteurAvecBuffer = new BufferedReader
(new FileReader("essai1.txt"));
}
catch(FileNotFoundException exc)
{
System.out.println("Erreur d'ouverture");
}
while ((ligne = lecteurAvecBuffer.readLine()) != null)
System.out.println(ligne);
lecteurAvecBuffer.close();
}

Programmation Orientée Objets Avancée Page 2

Vous aimerez peut-être aussi