Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1393 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [java] suppression de fichiers/réps

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[java] suppression de fichiers/réps

n°609565
scOulOu
Born Under Saturn
Posté le 12-01-2004 à 22:14:34  profilanswer
 

Quelqu'un aurait une méthode relativt sûr pr supprimer des fichiers, par hasard ?
Parce qu'en passant par les méthodes de cette foutue classe File, à priori, faites pour, j'obtiens des résultats complètement aléatoires. En testant sur le même fichier, on s'aperçoit qu'un coup il est effacé, un coup non, et ce sans le moindre message d'erreur.
J'ai bien essayé de ruser en bouclant sur la méthode delete() jusqu'à ce que le fichier soit détruit, mais qd ça met plus de 100 itérations, c'est lourd.
 
Alors, il existerait pas un truc génial qui m'éviterait de poursuivre mes bidouilles stériles ?

mood
Publicité
Posté le 12-01-2004 à 22:14:34  profilanswer
 

n°609608
benou
Posté le 12-01-2004 à 22:36:40  profilanswer
 

bizarre que delete marche pas  :heink:


---------------
ma vie, mon oeuvre - HomePlayer
n°609639
scOulOu
Born Under Saturn
Posté le 12-01-2004 à 22:54:11  profilanswer
 

Bizarre autant qu'étrange... :D
C'est pas qu'il marche pas, c'est plutôt qu'il marche très mal :/
 
Tu l'as svt essayé, de ton côté ? Jamais eu de pb ?

n°609668
Cherrytree
cn=?
Posté le 12-01-2004 à 23:07:06  profilanswer
 

Lecture seule ?


---------------
Le site de ma maman
n°609673
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 12-01-2004 à 23:08:53  profilanswer
 

Perso, j'utilise quotidiennement File.delete() dans une servlet et ça marche très bien [:spamafote]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°609734
scOulOu
Born Under Saturn
Posté le 12-01-2004 à 23:17:42  profilanswer
 

cherrytree a écrit :

Lecture seule ?


Bah non. La meilleure preuve en est que ça marche svt après plusieurs itérations. Alors, à moins que Win s'amuse à protéger aléatoirt ses fichiers en lecture... :D
 
 
Taiche > quelle sorte de fichiers ? Tu les utilises via java, avt de les supprimer ? Parce que j'en viens à me demander s'il y aurait pas un tps de latence indéfini après usage du fichier en tant qu'objet, qui ferait qu'il serait pas dispo pr la suppression...

n°609758
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 12-01-2004 à 23:20:14  profilanswer
 

C'est un fichier que je crée, que je lis pis que je détruis [:spamafote] Par contre, fais un close() sur les éventuels Streams qui pourraient taper dessus, hein :o


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°609791
scOulOu
Born Under Saturn
Posté le 12-01-2004 à 23:30:19  profilanswer
 

Taiche a écrit :

C'est un fichier que je crée, que je lis pis que je détruis [:spamafote] Par contre, fais un close() sur les éventuels Streams qui pourraient taper dessus, hein


Un peu comme moi, c'est bizarre... Et normalt je close() ttes les streams qui s'en servent (spas trop cpliqué, y'en a deux :D )... Bon, je vérifierai qd même ça demain au blot, mais j'ai qques dtes ; ça serait presque trop simple :/

n°609795
Taiche
(╯°□°)╯︵ ┻━┻
Posté le 12-01-2004 à 23:32:23  profilanswer
 

Bin j'avais eu le souci aussi mais fermer les Streams avait suffit [:spamafote]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
n°609808
scOulOu
Born Under Saturn
Posté le 12-01-2004 à 23:39:22  profilanswer
 

Ok ben prions donc :o

mood
Publicité
Posté le 12-01-2004 à 23:39:22  profilanswer
 

n°609832
the real m​oins moins
Posté le 13-01-2004 à 00:11:17  profilanswer
 

ben si tu fermes pas tes streams, y'a pas a s'etonner, en effet [:mlc]
 
sinon, file.delete() te renvoie un booleen, déjà, qui te dit si le fichier est deleté ou non, donc t'as un minimum de controle. j'ai par contre tjs trouvé débile que ça ne lance pas une exception ça :/


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°609871
benou
Posté le 13-01-2004 à 00:50:48  profilanswer
 

the real moins moins a écrit :

j'ai par contre tjs trouvé débile que ça ne lance pas une exception ça :/


+1
 
doit y avoir une raison mais je vois vraiment pas laquelle :/


---------------
ma vie, mon oeuvre - HomePlayer
n°609873
benou
Posté le 13-01-2004 à 00:51:33  profilanswer
 

scOulOu a écrit :


Tu l'as svt essayé, de ton côté ?


ben oui
 

scOulOu a écrit :


Jamais eu de pb ?


ben non


---------------
ma vie, mon oeuvre - HomePlayer
n°609904
the real m​oins moins
Posté le 13-01-2004 à 01:01:51  profilanswer
 

benou a écrit :


+1
 
doit y avoir une raison mais je vois vraiment pas laquelle :/

vu que c'est un appel natif, ça doit etre qu'un des os ciblés au départ par sun ne donnait pas plus d'indications? :/


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°610114
benou
Posté le 13-01-2004 à 08:20:15  profilanswer
 

the real moins moins a écrit :

vu que c'est un appel natif, ça doit etre qu'un des os ciblés au départ par sun ne donnait pas plus d'indications? :/
 


ben ouais mais même, ils avaient juste à balancer une exception sans message d'erreur ...


---------------
ma vie, mon oeuvre - HomePlayer
n°610281
the real m​oins moins
Posté le 13-01-2004 à 12:35:32  profilanswer
 

ouè.
tu fais une jsr?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°610454
scOulOu
Born Under Saturn
Posté le 13-01-2004 à 14:52:45  profilanswer
 

Bon alors, y'a bien ttes les streams qui closées.
En revche, encore un truc bizarre : qd je génère le fichier puis que j'essaie de l'effacer, ça plante au bout de 5-6 tentatives (la limite que j'ai fixée). Mais si je relance la même opération sans effacer le fichier préalablt généré (qui sera dc écrasé par sa regénération), le File.delete() marche.
 
Je nage un peu, là :/

n°610473
Predicator
Posté le 13-01-2004 à 15:15:09  profilanswer
 

et si au lieu de tenter plusieurs fois de le détruire, tu attendais un peu ?
genre un wait(100)... je pense que la requête de suppression doit être lancé au système, et que le système le fait quand il en a le temps, donc ça peut avoir des effets de bord...
je m'en sers aussi du File.delete(), et j'ai jamais eu de problème...
le coup des streams pas fermés me semble une bonne piste.


Message édité par Predicator le 13-01-2004 à 15:15:27
n°611615
scOulOu
Born Under Saturn
Posté le 14-01-2004 à 14:30:30  profilanswer
 

Alors :
- je confirme que ts les streams st bien fermés
- la temporisation ne donne pas tjrs qqch
 
En fait, d'après un collègue qui a fait une recherche sur le net, il semblerait que ça soit un pb assez répandu (la classe File est dc bien un peu merdique), que les dvpeurs résolvent via une association de temporisation et de garbage collector.
 
Pour ma part, un garbage collector avt la suppression semble bien marcher.


Message édité par scOulOu le 14-01-2004 à 14:31:03
n°611656
the real m​oins moins
Posté le 14-01-2004 à 15:05:45  profilanswer
 

scOulOu a écrit :


Pour ma part, un garbage collector avt la suppression semble bien marcher.

c'est quoi le rapport?
 
(et que bcp de gens aient un problème avec File ne signifie pas nécessairement que File est merdique)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°611685
scOulOu
Born Under Saturn
Posté le 14-01-2004 à 15:37:03  profilanswer
 

the real moins moins a écrit :

c'est quoi le rapport?
 
(et que bcp de gens aient un problème avec File ne signifie pas nécessairement que File est merdique)


Ben ce problème-là, à savoir un File.delete() qui marche aléatoirt sans aucun moyen de connaître l'origine de la chose, si, qd même un peu, non ?
 
Sinon pr le rapport, ben y'a guère que des supputations. Le gc tuerait des instances inutilisées qui auraient néamoins encore un handle sur le fichier, par ex. Je suis pas assez expert en Java pr fouiller la chose plus loin que ça, mais le fait est que ça marche [:spamafote]


Message édité par scOulOu le 14-01-2004 à 15:37:19
n°697265
veryfree
Posté le 10-04-2004 à 19:53:00  profilanswer
 

chez moi aussi ca merdouille.
 
le pire c'est que c'est aleatoire. la seul difference d'avec scoulou c'est que je fait pas de boucle pour viré le fichier j'essaye une fois et puis basta :s  
sinon le deleteOnExit ne passe pas non plus .
 
bref, il ont merdé sur ce coup :o
une exception ca aurait été bien quoi :/

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [java] suppression de fichiers/réps

 

Sujets relatifs
[VB] suppression d'un fichier sur DDProblème : Utilisation sous Unix de fichiers écrits sous Windows
Pas de port série :( (Java Comm)[Mugen] Formats de fichiers... ???
pb de connection JAVA / MySQL[Java] Manipuler des caractères diacritiques
[java] difference SUN / IBM Sdk[JAVA] 5.3-5.2= ??
suppression d'un maillonGerer (l'ouverture des) les fichiers (en memoire) avec MTS ??
Plus de sujets relatifs à : [java] suppression de fichiers/réps


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR