Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 上次修改的目录_C# - Fatal编程技术网

C# 上次修改的目录

C# 上次修改的目录,c#,C#,我正在尝试获取C#中上次修改的目录,该目录在某个日期被修改,无论我如何尝试,它总是获取索引0。我不明白为什么我下面的代码是错误的。今天是我调试它的日期。即使我今天修改了文件,我也没有得到任何结果 string dategiven = ""; dategiven = DateTime.Now.ToString(); var directories = Directory.GetDirectories(Dir) .Where(d => new FileInfo(d).LastWr

我正在尝试获取C#中上次修改的目录,该目录在某个日期被修改,无论我如何尝试,它总是获取索引0。我不明白为什么我下面的代码是错误的。今天是我调试它的日期。即使我今天修改了文件,我也没有得到任何结果

string dategiven = "";
dategiven  = DateTime.Now.ToString();


var directories = Directory.GetDirectories(Dir)
    .Where(d => new FileInfo(d).LastWriteTime >= Convert.ToDateTime(dategiven));

在您提供的示例中,您正试图将文件修改为给定变量或未来的确切创建时刻数据。如果您想在今天修改文件,只需使用
DateTime.today
而不是
DateTime。现在
下面的就可以了,谢谢各位,我想我需要调试才能理解发生了什么

 string dategiven = "";
 dategiven  = DateTime.Today.ToString();


  var directories = Directory.GetDirectories(Dir)
.Where(d => new FileInfo(d).LastWriteTime >= Convert.ToDateTime(dategiven));

我认为很明显,我们需要知道什么是
dategiven
,才能回答这个问题……为什么要将它转换为日期?它的数据类型是什么?转换后的值是多少?你调试过代码吗?会发生什么?你找到目录了吗?他们的
LastWriteTime
是什么?是否有
LastWriteTime
大于Convert.ToDateTime()返回值的情况?@Sammy请提供用于测试的
dategiven
的示例。如果你真的使用了
DateTime.Now.ToString()
很明显,没有目录的访问时间比现在晚。哦,我太笨了,我知道我的错误是我需要使用DateTime.today。为什么你要将
DateTime.Now
转换为字符串,然后用
Convert.ToDateTime
返回日期?