[Java] Classe File : méthodes delete() et renameTo() sans effet !

Classe File : méthodes delete() et renameTo() sans effet ! [Java] - Java - Programmation

Marsh Posté le 29-12-2006 à 13:47:02    

J'utilise la classe File dans le bout de code suivant (point d'entrée):
 

Code :
  1. public void doImport( String inputZipFile260up4, String outputZipFile270 ) throws
  2.     IOException
  3.   {
  4.     ArrayList<String> zip260FileNames = CLPZipUtil.ExtractZipFile(
  5.       inputZipFile260up4, TMP_DIR );
  6.     File[] XMLFiles = getXMLFiles( zip260FileNames );
  7.     convertXMLFile( XMLFiles[0], XMLFiles[1] );
  8.     try
  9.     {
  10.       renameV270XMLFile( XMLFiles[0], XMLFiles[1] );
  11.     }
  12.     catch ( Exception ex )
  13.     {
  14.       String exMsg = ex.getMessage() + " Error importing "
  15.         + inputZipFile260up4 + " file";
  16.       CLPTracingService.traceEx( exMsg, ex );
  17.     }
  18.     CLPZipUtil.createZip( new File( outputZipFile270 ), zip260FileNames );
  19.   }


 
Voici la définition de la méthode renameV270XMLFile :
 

Code :
  1. private static void renameV270XMLFile( File v260XMLFile, File v270XMLFile ) throws
  2.     Exception
  3.   {
  4.     //toujours false, pourquoi ?
  5.     if ( !v260XMLFile.delete() )
  6.     {
  7.       throw new Exception( "Error deleting " + v260XMLFile + " file." );
  8.     }
  9.     //toujours false, normal car le fichier v260XMLFile n'a pu être effacé !
  10.     if ( !v270XMLFile.renameTo( v260XMLFile ) )
  11.     {
  12.       throw new Exception( "Error renaming " + v270XMLFile + " file." );
  13.     }
  14.   }


 
Le fait que le fichier v260XMLFile ne veux pas s'effacer, il m'est impossible de renommer le fichier v270XMLFile. Pourquoi l'effacement est donc impossible ?
 
Merci :)
 
N.B. : Le programme a été lancé directement après reboot du PC.


Message édité par Giz le 29-12-2006 à 13:48:00
Reply

Marsh Posté le 29-12-2006 à 13:47:02   

Reply

Marsh Posté le 29-12-2006 à 14:09:39    

Error deleting C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\exp_Pierre_260U3.xml file.

 :cry:

Reply

Marsh Posté le 29-12-2006 à 15:12:09    

c'est ton appli qui cree le fichier aussi ?
si oui, est-ce que par hasard il serait possible que tu n'ai pas bien ferme le fichier si bien que l'OS ne peut le supprimer ?

Reply

Marsh Posté le 29-12-2006 à 15:31:30    

Tout les close() ont été appelés :jap:

Reply

Marsh Posté le 29-12-2006 à 16:38:07    

ben je sais pas alors [:souk]

Reply

Marsh Posté le 29-12-2006 à 17:26:41    

J'ai contourné le problème en créant un répertoire et en mettant le fichier de même nom dedans. Après les traitements, j'efface tous les fichiers temporaires ainsi que le répertoire :D. Et ça marche :sol:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed