Explorer le Système de Fichiers ([Link].
File)
Distinction entre Fichier et Dossier public boolean isDirectory()
public boolean isFile()
Autorisations (Fichier ou Dossier) public boolean canRead()
public boolean canWrite()
public boolean canExecute()
public boolean isHidden()
public boolean exists()
Création, Renommage et Suppression (Fichier ou Dossier) public boolean mkdir()
public boolean createNewFile()
public boolean renameTo([Link] dest)
public Boolean delete()
Recherche du Nom (Fichier ou Dossier), son chemin d’Accès public [Link] getName()
Absolu, Chemin d’Accès de son Dossier Parent public [Link] getAbsolutePath()
public [Link] getCanonicalPath()
public [Link] getParent()
Recherche des Dossiers à la Racine du Système et du Contenu d’un public static [Link][] listRoots()
Dossier public [Link][] listFiles()
public [Link][] listFiles([Link] filter)
Exemple : Rechercher les Fichiers dans un Dossier et ses sous-Dossiers : Classe : OutilsFichiers ; Méthode : chercherFichiersDossier
*******************************************************************************************
*********************** Fichier OutilsFichier .java *****************************
import [Link];
import [Link].*;
public class OutilsFichier
{
/*** Renvoie la liste de Fichiers du Dossier en Paramêtre */
public static File [] chercherFichierDossier(String dossier, String extension) {
File chemin = new File(dossier);
if(![Link]() || ![Link]() ) throw new IllegalArgumentException(dossier+"non reconnu");
TreeSet<File> fichiersTries = new TreeSet<>();
chercherFichiersDossier(fichiersTries, chemin, extension);
File [] fichiers = new File [[Link]()];
[Link](fichiers);
return fichiers;
}
private static void chercherFichiersDossier(TreeSet<File> fichiers, File cheminDossier, String extension){
for (File chemin : [Link]())
if ([Link]())chercherFichiersDossier(fichiers, chemin, extension);
else if ([Link]().endsWith(extension)) [Link](chemin);
} }
*******************************************************************************************
************************* Fichier RechercheFichiers .java **********************
import [Link];
import [Link];
class RechercheFichiers{
public static void main(String[] args){
String dossier = [Link]("Dossier de Recherche ? :");
String extension = [Link]("Extension ? :");
File [] fichiers = [Link](dossier, extension);
[Link](null, fichiers);
} }
Lecture avec des Flux de Données :
Description Classe [Link] Classe [Link]
Lecture d’une Donnée (renvoie l’octet public int read() public int read()
ou le caractère lu ; -1 si fin de Flux)
Lecture dans le Tableau en paramètre public int read(byte[] buffer) public int read(char[] buffer)
de [Link] données maximum
(renvoie le nombre d’Octets ou de
Caractères lus ; -1 si fin de Flux)
Lecture dans le Tableau en paramètre public int read(byte[] buffer, int Offset, public int read(char[] buffer, int Offset,
de length données maximum, en int length) int length)
remplissant le Tableau à partir de
l’indice Offset (renvoie le nombre
d’Octets ou de Caractères lus ; -1 si fin
de FLux)
Données Disponibles public int available() public boolean ready()
Fermeture du Flux de Données public void close() public void close()
Source de Données Classe Paramêtre du Constructeur
Fichier Texte [Link] Une instance de [Link] ou de [Link]
Fichier Binaire [Link] correspondant au chemin du fichier à lire
Tableau d’Octets [Link] Tableau d’Octets de Type byte []
Tableau de Caractères [Link] Tableau d’Octets de Type char []
Chaîne de Caractères [Link] Une instance de [Link]
Pipeline Texte [Link] Aucun Paramètre ou l’émetteur du pipeline texte,
instance de [Link]
Pipeline Binaire [Link] Aucun Paramètre ou l’émetteur du pipeline binaire,
instance de [Link]
************************* Fichier [Link] *****************************
import [Link];
import [Link].*;
class CalculOccurCaract{
public static void main(String[] args){
String cheminFichier = [Link](" Fichier :");
char caractere = [Link]("Caract\u00e8re :").charAt(0);
try (Reader fluxFichier = new FileReader(cheminFichier))
{
int occurrences=0;
int c;
do
{
c = [Link]();
if(c!=-1 && caractere == (char)c) occurrences++;
}
while(c!=-1);
[Link](null," ' "+caractere+" ' trouv\u00e9 "+occurrences+" fois dans "+cheminFichier);
}
catch (IOException ex)
{
[Link](null,ex);
}
}
}