我在目录中扫描png文件并将其修改日期放在List中。
但是如何格式化DateTime
?
我想保留Date
并删除Time
。
List<DateTime> MyFileDates = Directory.GetFiles("C:\\Images\\", "*.png")
.Select(File.GetLastWriteTime)
.ToList();
我尝试使用.ToString("dd/MM/yy")
,但却出错了
No overload for method 'ToString' takes 1 arguments.
List<DateTime> MyFilesDates = Directory.GetFiles("C:\\Images\\", "*.png")
.Select(File.GetLastWriteTime)
.ToString("dd/MM/yy")
.ToList();
答案 0 :(得分:3)
实现这一目标有两种方法。一种方法是使用格式为List<DateTime>
List<string>
转换为dd/MM/yy
List<string> MyFilesDates = Directory.GetFiles("C:\\Images\\", "*.png")
.Select(p => File.GetLastWriteTime(p)
.ToString("dd/MM/yy"))
.ToList();
其他方法是删除时间组件(将其设置为00:00:00):
List<DateTime> MyFilesDates = Directory.GetFiles("C:\\Images\\", "*.png")
.Select(p => File.GetLastWriteTime(p))
.Select(p => new DateTime(p.Year, p.Month, p.Day))
.ToList();
答案 1 :(得分:2)
您的代码看起来很好,除非您必须在每个DateTime上放置ToString,而不是将其放在列表中。所以你去了
{{1}}
相反,它应该没问题。