Publié le 02/09/2010
Auteur Axel
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Supprimer un fichier

Pour de multiples raisons, une application JAVA peut etre amenée à supprimer un ou plusieurs fichiers. Pour pouvoir effacer une ressource du disque dur, il est préférable de vérifier que l'on possède les droits à supprimer un fichier. En effet, la ressource peut etre utilisée par une autre application ou encore les propriétés du fichier sont en lecture seule.

Effacer un fichier du disque dur

Afin de limiter le risque d'erreur, il convient de procéder en premier lieu à des vérifications sur les propriétés du fichier. La class effectue 2 tests avant de supprimer le fichier:
file.exists(): est-ce que le fichier à supprimer existe sur le disque dur,
file.canWrite(): est que l'on possède les droits d'écrire dans le fichier.
import java.io.File;
import java.util.logging.Level;
import java.util.logging.Logger;
 
/**
 * Effacer un fichier du disque dur
 * http://www.fobec.com/java/987/supprimer-fichier.html
 * @author Axel 2010
 */
public class DiskUtils {
 
    public static boolean eraseFile(String filename) throws Exception {
 
        File file = new File(filename);
//Vérifier si le fichier existe
        if (!file.exists()) {
            throw new Exception("le fichier est introuvable !");
        }
//Tester les propriétés et les droits sur le fichier
        if (!file.canWrite()) {
            throw new Exception("Droit insuffisant pour accéder au fichier");
        }
 
        return file.delete();
    }
 
    public static void main(String args[]) {
        try {
            DiskUtils.eraseFile("c://monfichier.txt");
            System.out.println("Fichier supprimé");
        } catch (Exception ex) {
            System.out.println("Erreur: "+ex.getMessage());
            Logger.getLogger(DiskUtils.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
} 

L’intérêt d'utiliser une class pour supprimer un fichier est quelle utilise un minimum de test avant d'effacer le fichier sur le disque dur. Il suffit d'un verrou d'une autre application sur la ressource ou des droits trop faible pour que l'on ne puisse pas supprimer directement le fichier.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - sources
Mise a jour
02/09/2010
Visualisation
vu 6171 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Fobec dans news

Votre message a ete deplace sur le forum, ce sera plus facile pour en discuter.
http://www.fobec.com/forum/correspondance-entre-adresse-ipv4-adresse-ipv6-t1146.html

Publié par berrr dans news

Le PageRank de mon site www.specialvacances.com et toujours 0 pourquoi !

Publié par Marcos dans java

Bon travail , mais il a quelque chose d'etrange ! Je devais faire l'interface publique de classe avec des variables de position separees Position NORMAL = null; Position RIGHT = null; et posit...

Publié par Axel dans java

Bonjour Kezouille,
je viens de tester sur notre LAN (serveur Windows 7), la surveillance a l'air de marcher.
De votre cote, s'agit-il d'un serveur sous Windows ou sous Linux ?
Pouvez-vou...

Publié par Franzi dans java

Bonjour,
Le code est simple et compile, après être entré dans public void connect, il n'effectue pas this.session.get.transport et s'arrête. Sous eclipse avec Tomcat, j'ob...