0

ファイルが作成された日付を(プログラムで)推測したいと思います。それはBlaBla.2012-06-04.xlwという名前で、2012 年 6 月 4 日に作成されたと推測できます。

ただし、ファイルの名前がSitOnA.PotatoPanOtis.palのように別の名前である場合は、(DateTime への変換を試みて例外が発生することなく) 単純にあきらめて、ユーザーに DateTimePicker を提示できるようにしたいと考えています。

実行可能ですか?

私はこのコードを持っています:

String substr = SelectedFileName.Substring(DATE_BEGIN_POS, DATE_LENGTH);
return DateTime.Parse(substr);

私はこのようなものが理にかなっているだろうと考えています:

try 
{
    String substr = SelectedFileName.Substring(DATE_BEGIN_POS, DATE_LENGTH);
    return DateTime.Parse(substr);
}
catch (ConversionException ce) 
{
    //Show form with DateTimePicker
}

アップデート

このようなものが動作するはずです:

DateTime dt;
if (!(DateTime.TryParse(substr, out dt))) {
   . . .
4

3 に答える 3

4

推測しないでください。それを得る !

var creationTime = File.GetCreationTime(@"c:\myfile.txt");
于 2012-06-04T21:19:12.243 に答える
1

を使用して作成時間を直接尋ねるかFile.GetCreationTime、ファイル名から推測しようとしている場合は、 TryParseを使用して日付を取得し、機能しない場合 (メソッドが false を返す)、ダイアログを表示します。

于 2012-06-04T21:19:01.403 に答える
1

RegEx を使用してファイル名を一致させます。

Regex r = new Regex("\d{4}-\d{2}-\d{2}");
if (r.Match(fileName).Success) {
    //GUESS!
}
于 2012-06-04T21:21:26.167 に答える