IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

Supprimer fichier à 0ko


Sujet :

Entrée/Sortie Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 155
    Points : 85
    Points
    85
    Par défaut Supprimer fichier à 0ko
    Bonjour,

    J'ai une application java qui traite des fichiers temporaires que je voudrais supprimer.
    Je n'arrive pas à supprimer un fichier à 0ko.
    Voilà le code classique utilisé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public static boolean deleteFile(String path) {
        boolean correct = false;
        File f = null;
     
        if (path != null) {
          f = new File(path);
          correct = f.delete();
          f = null;
        }
     
        return correct;
      }
    Cette méthode ne supprime pas les fichiers à 0ko.
    Quelqu'un à déjà eu ce type de problème ?
    Si oui comment avez vous fait pour supprimer ce fichier ?

    Merci par avance.

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Tu es sous Windows ?
    Il y a de forte chance que le fichier soit toujours ouvert !

    S'il est ouvert par une autre application, il faudra attendre que cette dernière ferme le fichier pour le supprimer.
    Si c'est ton application qui utilise ce fichier, il y a des chances que ce soit parce que tu libères mal tes ressources...


    a++

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 155
    Points : 85
    Points
    85
    Par défaut
    Merci pour ton retour.
    Oui je suis sous Windows.
    En fait je me suis posé la même question, j'ai donc arrêté mon application, puis relancé en supprimant le fichier avant traitement et il ne le supprime pas.
    Il ne semble pas que celui ci soit utilisé par un autre programme tout était arrêté et c'est un dysfonctionnement de mon application qui a créé ce fichier.
    J'ai finalement supprimer ce fichier en ligne de commande avec un del, parce que même dans le dossier je ne pouvais pas le supprimer.

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Donc tu gères mal la libération de tes ressources.

    Utilises un try-with-ressource (Java 7) ou des try/finally (Java 6 et inférieur) pour fermer proprement tes fichiers dans tous les cas.


    a++

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 155
    Points : 85
    Points
    85
    Par défaut
    Oui je vais regarder pourquoi je ne libère pas ma ressource comme il faut.
    Par contre je ne comprends pas pourquoi je ne peux pas supprimer ce fichier même en redémarrant l’ordinateur.

    En tout cas merci.

  6. #6
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,
    Citation Envoyé par titi42 Voir le message
    Par contre je ne comprends pas pourquoi je ne peux pas supprimer ce fichier même en redémarrant l’ordinateur.
    Regardes le propriétaire du fichier : il se peut que le fichier n'en ait plus. C'est un problème qui m'est déjà arrivé, en Windows 7, avec un fichier manipulé par une application C++ et Java (effacé justement par Java alors que écrit par l'application C++) : la méthode delete() me retournait false, et ensuite le fichier n'était plus effaçable même via explorer ou commande en console (le fait de redémarrer n'y changeant rien). Il m'a fallut réaffecter un propriétaire pour pouvoir supprimer le fichier.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 155
    Points : 85
    Points
    85
    Par défaut
    Bonjour,

    Merci pour ton retour.
    J'ai pu supprimer le fichier avec un del * en ligne de commande.

    Je vais essayer de contrôler ma création de fichier pour ne plus générer ce genre de fichier.

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Impossible de supprimer fichier en ligne de commande
    Par alexg81 dans le forum Windows
    Réponses: 2
    Dernier message: 20/04/2006, 09h05
  2. Modifier ou supprimer fichier en lecture seule
    Par axel-erator dans le forum Langage
    Réponses: 2
    Dernier message: 01/12/2005, 18h57
  3. Supprimer fichier uploader avec aspSmartUpload
    Par julio_097 dans le forum ASP
    Réponses: 2
    Dernier message: 11/08/2005, 17h27
  4. Réponses: 2
    Dernier message: 03/06/2005, 12h01
  5. [VB6] supprimer fichier caché
    Par camyo dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 28/07/2004, 14h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo