我想比较两个目录。我需要比较其中的文件修改时间。这是我想做的一些伪代码:
FOR each FILE in DIR-A
if FILE["data-modified"] > DIR-B-Files[Date-modified] THEN
Do Something
Else
Do Nothing
Endif
答案 0 :(得分:0)
此方法可能是实现所需目标的一种方法。
检查两个文件夹是否包含相同数量的文件。 循环访问(排序的)文件,并检查名称是否相同以及上次写入时间的时间戳是否相等。
private bool DirectoryModificationTimeEquals(string pathA, string pathB)
{
var directoryA = new DirectoryInfo(pathA);
var directoryB = new DirectoryInfo(pathB);
var filesA = directoryA.GetFiles().OrderBy(x => x.Name).ToList();
var filesB = directoryB.GetFiles().OrderBy(x => x.Name).ToList();
if (filesA.Count == filesB.Count)
{
for (int i = 0; i < filesA.Count; i++)
{
if (!filesA[i].Name.Equals(filesB[i].Name))
{
return false;
}
if (filesA[i].LastWriteTime != filesB[i].LastWriteTime)
{
return false;
}
}
return true;
}
return false;
}