質問

System.Net.FtpWebRequest名前空間を使用して、ftpサーバー上の指定されたリモートファイルのタイムスタンプを取得する短いサンプルコードを探しています。要求オブジェクトのMethodプロパティをWebRequestMethods.Ftp.GetDateTimestampに設定する必要があることは知っていますが、System.DateTimeオブジェクトに応答を戻す方法がわかりません。

役に立ちましたか?

解決

うん-それはほとんど私が終わったものです。私はこのようなもので行きました

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);
}

他のヒント

日付フィールドのみを取得し、時刻は取得しないようにするには、次の例外を除き、このスレッドの最初の回答とまったく同じように実行します。

Console.WriteLine(response.LastModified().ToShortDateString);

次のようなもの:

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);
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top