2
var dir1Files = dir1.GetFiles("*", SearchOption.AllDirectories);
var dir2Files = dir2.GetFiles("*", SearchOption.AllDirectories);
var difference = dir1Files.ToHashSet();
difference.SymmetricExceptWith(dir2Files);
string[] foo1 = difference.Select(c => c.Name).ToArray();
File.WriteAllLines(@"d:\log1.txt", foo1);
我在这里根据名称,然后在文本文件中写入比较两个文件...但我需要用目录名一起写的名字是这样comparing two folders for non identical files? ......比较非完全相同的文件,两个文件夹与对称差
有何建议?
编辑: 我有两个文件夹A和B..inside这两个文件夹的文件夹地段和文件是否有... 我对非完全相同的文件,这两个文件夹比较对称差和写名字和目录名成一个文本文件...我的问题是对称的区别是工作正常,并将两个不相同的文件名写入一个日志文件...但我必须用该目录名写入文件名...
此代码工作正常
var dir1Files = dir1.GetFiles("*", SearchOption.AllDirectories).Select(x => new { x.Name, x.Length });
var dir2Files = dir2.GetFiles("*", SearchOption.AllDirectories).Select(x => new { x.Name, x.Length });
var difference = dir1Files.ToHashSet();
difference.SymmetricExceptWith(dir2Files);
string[] foo1 = difference.Select(c => c.Name).ToArray();
File.WriteAllLines(@"d:\log1.txt", foo1);
在这里我不能放弃这样的
string[] foo1 = difference.Select(c => c.Name+""+c.DirectoryName).ToArray();
@Ani:没有,如果我给这样的VAR dir1Files = dir1.GetFiles( “*”,SearchOption.AllDirectories ).Select(x => new {x.Name}); – bala3569 2010-12-08 14:19:33
@Ani:它是比较并给出不相同的文件。其他它是给整个搜索结果 – bala3569 2010-12-08 14:20:41