Méthodes de Reader et InputStream
•Méthodes similaires mais pour différents types
•Reader (caractères) –int read() –int read(char cbuf[]) –int read(char cbuf[], int offset, int length)
•InputStream (octet) –int read() –int read(byte cbuf[]) –int read(byte cbuf[], int offset, int length)
•Méthodes pour marquer une position dans le flot, sauter une information, initialiser la position courante
•On utilise généralement plutôt les méthodes des sous-classes
•Méthodes similaires mais pour différents types
•Writer (caractères) –int write(int c) –int write(char cbuf[]) int write(char cbuf[], int offset, int length) •OutputStream (octet) –int write(int c) –int write(byte cbuf[]) –int write(byte cbuf[], int offset, int length) •Ouverture automatique àla création du flot
•Fermeture par l’appel àla méthode close() pour libérer des ressources système
Tester l’existence d’un fichier File
import java.io.*; public class TestFile { public static void main (String argv[]) { File f = new File (« bonjour.txt »);
if (f.exists()) System.out.println (« Le fichier bonjour.txt existe »); else System.out.println (« Le fichier bonjour.txt n’existepas »);
}
}
Informations sur les fichiers File
import java.io.*; public class InfosFile { public static void main (String argv[]) { File f = new File (« Infos.txt »);
if (f.exists()) { System.out.println (« Informations sur le fichier Infos.txt »); System.out.println (« isFile : » + f.isFile()); System.out.println (« isDirectory : » + f.isDirectory()); System.out.println (« getAbsolutePath : » + f.getAbsolutePath()); System.out.println (« length : » + f.length()); System.out.println (« canRead : » + f.canRead()); System.out.println (« canWrite : » + f.canWrite()); }
}
}
Lister les fichiers d’un dossier File
import java.io.*; public class ListFile { public static void main (String argv[]) { File f = new File (« . »); String[] liste = f.list() ; System.out.println (« Il y a » + liste.length + » fichiers »); for (int i = 0; i < liste.length; i++) System.out.println (liste[i]); } }
File permet aussi de créer, renommer ou supprimer des fichiers.
Copie d’un fichier texte File + FileReader
import java.io.*;
public class Copy { public static void main(String[] args) throws IOException { File inputFile = new File(« bonjour.txt »); File outputFile = new File (« bonjour2.txt »);
FileReader in = new FileReader(inputFile); FileWriter out = new FileWriter(outputFile); int c;
while ((c = in.read()) != -1) out.write(c);
in.close(); out.close();
}
}
Besoin de gérer les erreurs
•Exceptions •Try …
•Catch …