我参加了一个C#课程,目前的任务是创建一个控制台应用程序,用于从目录“客户订单”传输新文件(在过去24小时内修改)到目录“家庭办公室”。在过去24小时内修改过的打印文件到控制台
在这一点上,我只是想找出一种方法来找出哪些文件是新的。要查看它是否有效,我使用Console.WriteLine将新文件打印到控制台窗口。但是,它所做的只是打印“System.Linq.Enumerable + WhereArrayIterator'1 [System.IO.FileInfo]”。
我对这门语言非常陌生,而且我担心我已经开始讨论所有错误的方法。这是到目前为止我的代码(谷歌搜索和获得的想法从StackOverflow上一个小时后):
class ModifiedFiles
{
public string your_dir;
public IEnumerable<FileInfo> modified()
{
your_dir = @"C:\Users\Student\Desktop\Customer Orders";
var directory = new DirectoryInfo(your_dir);
DateTime from_date = DateTime.Now.AddDays(-1);
DateTime to_date = DateTime.Now;
var files = directory.GetFiles()
.Where(file => file.LastWriteTime >= from_date && file.LastWriteTime <= to_date);
return files;
}
}
static void Main(string[] args)
{
ModifiedFiles newFiles = new ModifiedFiles();
Console.WriteLine(newFiles.modified());
Console.ReadLine();
}
能有人好心指出,这里发生了什么,并把我在正确的轨道上?
追加.ToList()到linq – LamonteCristo
后添加ToList,使用foreach对WriteLine的所有结果进行循环。 – Berkay
谢谢你,工作。 –