System.Net.FtpWebRequest GetDateTimestamp esempio
-
22-07-2019 - |
Domanda
Sto cercando un po 'di codice di esempio che utilizza lo spazio dei nomi System.Net.FtpWebRequest per ottenere il timestamp di un file remoto specificato su un server ftp. So che devo impostare la proprietà Method dell'oggetto richiesta su WebRequestMethods.Ftp.GetDateTimestamp ma non sono sicuro di come ottenere la risposta in un oggetto System.DateTime.
Soluzione
Sì, è praticamente quello con cui sono finito. Sono andato con qualcosa del genere
request = FtpWebRequest.Create("ftp://ftp.whatever.com/somefile.txt");
request.Method = WebRequestMethods.Ftp.GetDateTimestamp;
request.Proxy = null;
using (FtpWebResponse resp = (FtpWebResponse)request.GetResponse())
{
Console.WriteLine(resp.LastModified);
}
Altri suggerimenti
Per ottenere solo il campo data ma non l'ora, fai esattamente come la prima risposta in questa discussione con la seguente eccezione:
Console.WriteLine(response.LastModified().ToShortDateString);
Qualcosa del genere:
DateTime DateValue;
FtpWebRequest Request = (FtpWebRequest)WebRequest.Create(yourUri);
Request.Method = WebRequestMethods.Ftp.GetDateTimestamp;
Request.UseBinary = false;
using (FtpWebResponse Response = (FtpWebResponse)Request.GetResponse())
using (TextReader Reader = new StringReader(Response.StatusDescription))
{
string DateString = Reader.ReadLine().Substring(4);
DateValue = DateTime.ParseExact(DateString, "yyyyMMddHHmmss", CultureInfo.InvariantCulture.DateTimeFormat);
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow