Bonjour à tous et à toutes,
voici mon problème,
Voici ce que je réalise, je teste dans un premier temps les fichiers du directory "folder1" pour savoir si la dernière modification de ceux ci est égale à "4/05/04", si oui je désire les uploader vers un autre directory nommé "folder2".
Mon problème est que je n'y arrive pas, le teste fonctionne bien pour savoir si la dernière modification de ceux ci est égale à "4/05/04", il rentre dans ma conditionelle eta ffiche ce qu'il doit afficher, n'affiche pas d'erreur en retour dans la console, mais n'upload pas les fichiers qui ont rempli cette condition !!
Voici le contenu des variables suivantes:
String directory = "/folder1";
String destinationFolder = "C:/folder2";
C'est deux directories ce trouvent sur la C:
Je ne sais pas si ca peux aider mais si je ne mets pas destinationFolder = "C:/folder2"; mais /folder2 il m'affiche l'erreur suivante :
J'avoue que c'est normal puisque /folder2 est vide et que le fichier dont je parle monFichier.txt ce trouve dans /folder et sa dernière modification est égale à "4/05/04".java.io.FileNotFoundException : /folder2/monFichier.txt <The system cannot find the path specified>
Alors pourquoi n'affiche t'il rien lorsque j'ajoute C: ??
Enfin voilà je vous montre mon code, j'ai surement fait une bète erreur :
J'espère avoir su expliquer correctement mon problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69 public void getDataFiles( String server, String username, String password, String directory, String destinationFolder)throws Exception { FTPClient ftp = new FTPClient(); try { // Connect and logon to FTP Server int reply; ftp.connect(server); ftp.login(username,password); System.out.println("Connected to " + server + "."); System.out.print("Ftp reply :"+ ftp.getReplyString()); // After connection attempt, you should check the reply code to verify // success. reply = ftp.getReplyCode(); System.out.print("Reply code :"+ reply); if(!FTPReply.isPositiveCompletion(reply)) { ftp.disconnect(); System.err.println("FTP server refused connection."); System.exit(1); } else{ System.err.println("We are connected on the FTP server and will transfer files."); FTPFile[] files = ftp.listFiles(directory); System.out.println( "files : " + files ); System.out.println( "Number of files in dir: " + files.length ); DateFormat df = DateFormat.getDateInstance( DateFormat.SHORT ); System.out.println( "Date format: " + df); for( int i=0; i<files.length; i++ ) { System.out.println("\n FileName : " + files[i].getName()); System.out.println( "FileSize(): " + files[i].getSize() ); Date fileDate = files[ i ].getTimestamp().getTime(); System.out.println( "FileDate: " + fileDate ); System.out.print("DateFormat : " + df.format( files[ i ].getTimestamp().getTime() ) ); if ( "4/05/04".equals(df.format( files[ i ].getTimestamp().getTime() ) ) ){ System.out.println("This file was created on 4/05/04 : " + files[i].getName()); File file = new File( destinationFolder + File.separator + files[ i ].getName() ); FileOutputStream fos = new FileOutputStream( file ); // transfer file ftp.retrieveFile( files[ i ].getName(), fos ); System.out.println( files[ i ].getName()+ " was tranfered successfully "); fos.close(); file.setLastModified( fileDate.getTime() ); } System.out.print("\n______________________________________________"); } } // Logout from the FTP Server and disconnect ftp.logout(); } catch(IOException e) { e.printStackTrace(); } finally { if(ftp.isConnected()) { try { ftp.disconnect(); System.err.println("\n We disconnect from the FTP server."); } catch(IOException ioe) { } } } }
Merci a vous pour votre aide, car je suis un peu perdu là.
Ciao
Partager