Bonjour à tous,
j'ai le code suivant :
Je dois récupérer à partir de ce détail l'heure des fichiers et les télécharger s'ils sont plus récents que ceux du poste local ( Note : si vous connaissez une meilleure méthode que l'extraction de chaîne depuis la méthode ListDirectoryDetails, je suis preneur ! ).
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 FtpWebRequest client = (FtpWebRequest)FtpWebRequest.Create(ftpUrl + "/htdocs"); client.KeepAlive = false; client.Credentials = new NetworkCredential(ftpUser, ftpPasswd); client.Method = WebRequestMethods.Ftp.ListDirectoryDetails; using (FtpWebResponse response = (FtpWebResponse)client.GetResponse()) { using (Stream stream = response.GetResponseStream()) { using (StreamReader rdStream = new StreamReader(stream, Encoding.GetEncoding(28591))) { string detailDirectory = rdStream.ReadToEnd(); // ici traitement, remplacé pour test par une MessageBox System.Windows.Forms.MessageBox.Show(detailDirectory); } } }
Mon souci, c'est que l'heure retourné par cette fonction est fausse (une heure de retard ). Je sais que le serveur FTP est à l'heure (depuis FileZilla les heures des fichiers sont corrects).
La seule solution que j'ai trouvé est, une fois l'extraction faite, rajouter 1 à l'heure, mais c'est pas terrible, d'autant plus que je ne sais pas si le problème sera systématique ou non...
Je précise également, si ça peut jouer, que l'heure du poste local est OK également...
Merci pour votre aide !
Partager