Comment renommer un fichier à l'aide de Java

Comment renommer un fichier à l'aide de Java
Le renommer un fichier est généralement effectué via le programme de shell du système d'exploitation ou l'interface de fenêtre correspondante. Cependant, Java a les classes, fichiers et fichiers prédéfinis, avec des commandes shell, qui sont des méthodes des classes. La classe, le fichier est dans le java.Io.* Package, qui doit être importé pour que ses méthodes soient utilisées. La classe, les fichiers (se terminant par «s») se trouve dans le java.nio.déposer.* Package, qui doit également être importé, pour que ses propres méthodes soient utilisées.

Pour renommer un fichier, l'utilisateur ou le programmeur doit avoir l'autorisation d'exécution du répertoire qui a directement le fichier. De plus, si le nouveau nom existe déjà, sous le nom d'un autre fichier dans le même répertoire, le renomment ne devrait pas avoir lieu.

La classe de fichiers présente plus d'avantages par rapport à la classe de fichiers. Par exemple, si un autre fichier au même nom existe déjà, la classe de fichiers a le choix de remplacer l'autre fichier. Il a un schéma de gestion d'exception (erreur), tandis que le fichier n'a pas de schéma de traitement d'exception efficace.

Cet article explique comment renommer un fichier via Java, en utilisant le fichier et les classes de fichiers.

Fichier de classe

Cette classe a la méthode appelée renameto (), pour renommer un fichier. Pour utiliser cette méthode, un objet du type, le fichier, doit être instancié à partir de la classe, fichier. C'est cet objet qui utilisera la méthode. Un objet de fichier est un objet qui a un chemin de fichier. Un exemple de chemin de fichier est:

/ Home / User / Dir1 / Demo.SMS

où les noms sont des répertoires, sauf «démo.txt ”qui est un nom de fichier. La syntaxe d'un constructeur pour créer (instancier) Un objet de fichier est:

Fichier public (String PathName)

où PathName est un chemin comme celui donné ci-dessus mais doit être en citations.

La syntaxe de la méthode Renameto de l'objet de fichier est:

Public Boolean Renameto (fichier dest)

où le dest (pour la destination) est un nouvel objet de fichier du même chemin mais se terminant avec le nouveau nom de fichier. Remarque: Le nom de fichier à la fin d'un chemin fait partie du chemin (officiellement). Cela signifie que Dest est un autre objet de fichier qui devrait se référer au même fichier. Donc, si la démo du nom.txt doit être changé en réel.txt, le dest serait:

/ home / user / dir1 / réel.SMS

La méthode revient vrai si le renommée a eu lieu et fausse autrement. Si False est retourné, il ne sera pas facilement possible de savoir pourquoi le fichier ne pourrait pas être renommé.

Le programme Java suivant nomme le fichier, démo.txt à réel.txt, conformément au schéma ci-dessus:

Importer Java.Io.*
classe publique TheClass
public static void main (String [] args)
Fichier fileobjold = nouveau fichier ("/ home / user / dir1 / démo.SMS");
File fileObjnew = new File ("/ home / user / dir1 / réel.SMS");
if (fileobjold.renameto (fileObjnew))
Système.dehors.println ("Fichier renommé avec succès.");
autre
Système.dehors.println ("Erreur: le fichier n'a pas pu être renommé!");


La sortie doit être:

Déposer renommé avec succès.

Tout est égal.

Fichiers de classe

La classe, fichiers dans le java.nio.déposer.* Le package n'a que des méthodes statiques. «Statique» signifie que la classe n'a pas besoin d'être instanciée pour aucune de ses méthodes à utiliser. La classe a la méthode statique appelée Move (), pour déplacer un fichier d'un endroit à un autre, avec la possibilité de donner au fichier de destination un nouveau nom. Pour utiliser cette méthode, un objet du type, le chemin, doit être obtenu (renvoyé) de la classe, chemins. C'est cet objet qui utilisera la méthode. Un objet path est similaire à un objet de fichier: c'est un objet qui a un chemin de fichier. Un exemple de chemin de fichier est:

/ Home / User / Dir1 / Demo.SMS

où les noms sont des répertoires, sauf «démo.txt ”qui est un nom de fichier. La classe Paths n'a que des méthodes statiques. L'un d'eux est:

Path Static Path Get (String First, String… plus)

Encore une fois, «statique» signifie qu'un objet Paths n'a pas à être créé (instancié), pour que la méthode get () soit utilisée. Les nombreux arguments de la méthode get () signifient que les nombreuses chaînes seraient jointes pour un chemin à obtenir. Un littéral de cordes est en double quot.

La classe Paths est également dans le java.nio.déposer.* package, qui doit être importé.

La méthode de syntaxe pour la classe move () de la classe Fichiers est:

Déplacement du chemin statique du public (source de chemin, cible de chemin, copie… options) lève IOException

Il lance une ioexception. Cette déclaration devrait donc être dans un bloc d'essai, suivie d'un blocage. La source fait référence au chemin d'origine mais doit être un objet de chemin. La cible fait référence au nouveau chemin et doit également être un objet de chemin. L'argument CopyOption peut être omis comme dans le programme suivant.

Afin de renommer un fichier avec la méthode Move (), le fichier sera déplacé vers lui-même et lui donnera un nouveau nom. Ainsi, le chemin de la source devrait se terminer avec le nom de fichier d'origine, et le chemin de la cible devrait se terminer avec le nouveau nom de fichier. Donc, si la démo du nom.txt doit être changé en réel.txt, alors le chemin de la cible serait:

/ home / user / dir1 / réel.SMS

La méthode de déplacement lance une exception, qui est un objet de la classe IOException. Donc, le package java.Io.*, qui a la classe IOException, doit être importé.

Le programme Java suivant, renomment le fichier, démo.txt à réel.txt, conformément à ce schéma:

Importer Java.Io.*
Importer Java.nio.déposer.*
classe publique TheClass
public static void main (String [] args)
Source de chemin = chemins.get ("/ home / user / dir1 / démo.SMS");
Path Target = chemins.get ("/ home / user / dir1 / réel.SMS");
essayer
Des dossiers.déplacer (source, cible);
catch (ioexception e)
e.printStackTrace ();


S'il n'y a pas de sortie pour ce programme particulier, le fichier a été renommé.

Conclusion

Le renommer un fichier est généralement effectué via le programme de shell du système d'exploitation ou l'interface de fenêtre correspondante. Cependant, Java a les classes, fichiers et fichiers prédéfinis, avec des commandes shell, qui sont des méthodes des classes. La classe, le fichier est dans le java.Io.* Package, qui doit être importé pour que ses méthodes soient utilisées. La classe, les fichiers sont dans le java.nio.déposer.* Package, qui doit également être importé, afin que ses propres méthodes soient utilisées.

Pour utiliser la classe de fichiers, un objet de type de fichier doit être instancié. Cet objet utilisera sa méthode renameto () pour renommer le fichier. Afin d'utiliser cette méthode, deux objets de fichier, effectivement les objets chemin, sont nécessaires. Les objets de chemin ne diffèrent qu'à leurs fins de chemin, avec les anciens et nouveaux noms de fichiers. L'objet de fichier est de la classe de fichiers, qui est dans le java.Io.* emballer.

D'un autre côté, la classe de fichiers utilise sa méthode statique Move () pour renommer un fichier indirectement. Cette méthode Move () déplace un fichier sur lui-même mais avec un nouveau nom. Pour utiliser cette méthode, deux objets de chemin sont nécessaires. L'objet PATH ne diffère qu'à leurs fins de chemin, avec les noms de fichiers anciens et nouveaux. L'objet Path est de la classe Paths, qui est dans le java.nio.déposer.* emballer. La classe PATHS n'a que des méthodes statiques, dont celle pour obtenir un objet de chemin est GET ().