Java - Classe de fichier

La classe Java File représente les fichiers et les chemins de répertoire 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.

L'objet File représente le fichier / répertoire réel sur le disque. Voici la liste des constructeurs pour créer un objet File.

N ° Sr. Méthode et description
1

File(File parent, String child)

Ce constructeur crée une nouvelle instance de File à partir d'un chemin d'accès abstrait parent et d'une chaîne de chemin d'accès enfant.

2

File(String pathname)

Ce constructeur crée une nouvelle instance de File en convertissant la chaîne de chemin d'accès donnée en un chemin abstrait.

3

File(String parent, String child)

Ce constructeur crée une nouvelle instance de File à partir d'une chaîne de chemin parent et d'une chaîne de chemin enfant.

4

File(URI uri)

Ce constructeur crée une nouvelle instance de File en convertissant le fichier donné: URI en un chemin abstrait.

Une fois que vous avez l' objet File en main, il existe une liste de méthodes d'assistance qui peuvent être utilisées pour manipuler les fichiers.

N ° Sr. Méthode et description
1

public String getName()

Renvoie le nom du fichier ou du répertoire indiqué par ce chemin abstrait.

2

public String getParent()

Renvoie la chaîne de chemin du parent de ce chemin abstrait, ou null si ce chemin ne nomme pas de répertoire parent.

3

public File getParentFile()

Renvoie le chemin abstrait du parent de ce chemin abstrait, ou null si ce chemin ne nomme pas de répertoire parent.

4

public String getPath()

Convertit ce chemin abstrait en une chaîne de chemin.

5

public boolean isAbsolute()

Teste si ce chemin abstrait est absolu. Renvoie true si ce chemin abstrait est absolu, false dans le cas contraire.

6

public String getAbsolutePath()

Renvoie la chaîne de chemin absolu de ce chemin abstrait.

sept

public boolean canRead()

Teste si l'application peut lire le fichier indiqué par ce chemin abstrait. Renvoie true si et seulement si le fichier spécifié par ce chemin abstrait existe et peut être lu par l'application; faux sinon.

8

public boolean canWrite()

Teste si l'application peut modifier le fichier indiqué par ce chemin abstrait. Renvoie true si et seulement si le système de fichiers contient réellement un fichier désigné par ce chemin abstrait et que l'application est autorisée à écrire dans le fichier; faux sinon.

9

public boolean exists()

Teste si le fichier ou le répertoire indiqué par ce chemin abstrait existe. Renvoie true si et seulement si le fichier ou le répertoire indiqué par ce chemin abstrait existe; faux sinon.

dix

public boolean isDirectory()

Teste si le fichier indiqué par ce chemin abstrait est un répertoire. Renvoie true si et seulement si le fichier désigné par ce chemin abstrait existe et est un répertoire; faux sinon.

11

public boolean isFile()

Teste si le fichier indiqué par ce chemin abstrait est un fichier normal. Un fichier est normal s'il ne s'agit pas d'un répertoire et, en outre, satisfait à d'autres critères dépendant du système. Tout fichier hors répertoire créé par une application Java est garanti comme étant un fichier normal. Renvoie true si et seulement si le fichier désigné par ce chemin abstrait existe et est un fichier normal; faux sinon.

12

public long lastModified()

Renvoie l'heure à laquelle le fichier indiqué par ce chemin abstrait a été modifié pour la dernière fois. Renvoie une valeur longue représentant l'heure de la dernière modification du fichier, mesurée en millisecondes depuis l'époque (00:00:00 GMT, 1er janvier 1970), ou 0L si le fichier n'existe pas ou si une erreur d'E / S se produit.

13

public long length()

Renvoie la longueur du fichier indiquée par ce chemin abstrait. La valeur de retour n'est pas spécifiée si ce chemin désigne un répertoire.

14

public boolean createNewFile() throws IOException

Crée atomiquement un nouveau fichier vide nommé par ce chemin abstrait si et seulement si un fichier avec ce nom n'existe pas encore. Renvoie true si le fichier nommé n'existe pas et a été créé avec succès; false si le fichier nommé existe déjà.

15

public boolean delete()

Supprime le fichier ou le répertoire indiqué par ce chemin abstrait. Si ce chemin désigne un répertoire, le répertoire doit être vide pour être supprimé. Renvoie true si et seulement si le fichier ou le répertoire est supprimé avec succès; faux sinon.

16

public void deleteOnExit()

Demande que le fichier ou le répertoire désigné par ce chemin abstrait soit supprimé lorsque la machine virtuelle s'arrête.

17

public String[] list()

Renvoie un tableau de chaînes nommant les fichiers et répertoires dans le répertoire indiqué par ce chemin abstrait.

18

public String[] list(FilenameFilter filter)

Renvoie un tableau de chaînes nommant les fichiers et répertoires dans le répertoire indiqué par ce chemin abstrait qui satisfait le filtre spécifié.

20

public File[] listFiles()

Renvoie un tableau de chemins d'accès abstraits indiquant les fichiers du répertoire indiqué par ce chemin d'accès abstrait.

21

public File[] listFiles(FileFilter filter)

Renvoie un tableau de chemins d'accès abstraits indiquant les fichiers et répertoires dans le répertoire indiqué par ce chemin d'accès abstrait qui satisfont le filtre spécifié.

22

public boolean mkdir()

Crée le répertoire nommé par ce chemin abstrait. Renvoie true si et seulement si le répertoire a été créé; faux sinon.

23

public boolean mkdirs()

Crée le répertoire nommé par ce chemin abstrait, y compris tous les répertoires parents nécessaires mais inexistants. Renvoie true si et seulement si le répertoire a été créé, ainsi que tous les répertoires parents nécessaires; faux sinon.

24

public boolean renameTo(File dest)

Renomme le fichier indiqué par ce chemin abstrait. Renvoie true si et seulement si le changement de nom a réussi; faux sinon.

25

public boolean setLastModified(long time)

Définit l'heure de dernière modification du fichier ou du répertoire nommé par ce chemin abstrait. Renvoie true si et seulement si l'opération a réussi; faux sinon.

26

public boolean setReadOnly()

Marque le fichier ou le répertoire nommé par ce chemin abstrait afin que seules les opérations de lecture soient autorisées. Renvoie true si et seulement si l'opération a réussi; faux sinon.

27

public static File createTempFile(String prefix, String suffix, File directory) throws IOException

Crée un nouveau fichier vide dans le répertoire spécifié, en utilisant le préfixe et les chaînes de suffixe donnés pour générer son nom. Renvoie un chemin abstrait indiquant un fichier vide nouvellement créé.

28

public static File createTempFile(String prefix, String suffix) throws IOException

Crée un fichier vide dans le répertoire de fichiers temporaires par défaut, en utilisant le préfixe et le suffixe donnés pour générer son nom. L'appel de cette méthode équivaut à l'appel de createTempFile (prefix, suffix, null). Renvoie un chemin d'accès abstrait indiquant un fichier vide nouvellement créé.

29

public int compareTo(File pathname)

Compare lexicographiquement deux chemins abstraits. Renvoie zéro si l'argument est égal à ce chemin abstrait, une valeur inférieure à zéro si ce chemin abstrait est lexicographiquement inférieur à l'argument, ou une valeur supérieure à zéro si ce chemin abstrait est lexicographiquement supérieur à l'argument.

30

public int compareTo(Object o)

Compare ce chemin abstrait à un autre objet. Renvoie zéro si l'argument est égal à ce chemin abstrait, une valeur inférieure à zéro si ce chemin abstrait est lexicographiquement inférieur à l'argument, ou une valeur supérieure à zéro si ce chemin abstrait est lexicographiquement supérieur à l'argument.

31

public boolean equals(Object obj)

Teste l'égalité de ce chemin abstrait avec l'objet donné. Renvoie true si et seulement si l'argument n'est pas nul et est un chemin abstrait qui désigne le même fichier ou répertoire que ce chemin abstrait.

32

public String toString()

Renvoie la chaîne de chemin de ce chemin abstrait. Il s'agit simplement de la chaîne renvoyée par la méthode getPath ().

Exemple

Voici un exemple pour illustrer l'objet File -

package com.tutorialspoint;
import java.io.File;

public class FileDemo {
   
   public static void main(String[] args) {
      File f = null;
      String[] strs = {"test1.txt", "test2.txt"};
      try {
         // for each string in string array 
         for(String s:strs ) {
            // create new file
            f = new File(s);
            
            // true if the file is executable
            boolean bool = f.canExecute();
            
            // find the absolute path
            String a = f.getAbsolutePath(); 
            
            // prints absolute path
            System.out.print(a);
            
            // prints
            System.out.println(" is executable: "+ bool);
         } 
      } catch (Exception e) {
         // if any I/O error occurs
         e.printStackTrace();
      }
   }
}

Considérez qu'il existe un fichier exécutable test1.txt et qu'un autre fichier test2.txt n'est pas exécutable dans le répertoire courant. Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

Production

/home/cg/root/2880380/test1.txt is executable: false
/home/cg/root/2880380/test2.txt is executable: false