1
私は対称差と非同一のファイルのための2つのフォルダを比較し、テキストファイルに長さやディレクトリの名前を書いて...しかし、それはSymmetricDifferenceを使用して、同一でないファイルに対して2つのフォルダを比較しますか?
5506 D:\Trial\codegenpath\ramcovm247_portal_765\EDKPLAjaxCodeGen.log
5857 D:\Trial\codegenpath\ramcovm247_portal_765\EDKService.log
3741 D:\Trial\codegenpath\ramcovm247_portal_765\EDKTypes.log
10644 D:\Trial\zippedpath\ramcovm247_portal_765\EDKPLAjaxCodeGen.log
11714 D:\Trial\zippedpath\ramcovm247_portal_765\EDKService.log
7482 D:\Trial\zippedpath\ramcovm247_portal_765\EDKTypes.log
のように書いているが、私はこのように次々に記述する必要があるのですここで
5506 D:\Trial\codegenpath\ramcovm247_portal_765\EDKPLAjaxCodeGen.log
10644 D:\Trial\zippedpath\ramcovm247_portal_765\EDKPLAjaxCodeGen.log
5857 D:\Trial\codegenpath\ramcovm247_portal_765\EDKService.log
11714 D:\Trial\zippedpath\ramcovm247_portal_765\EDKService.log
3741 D:\Trial\codegenpath\ramcovm247_portal_765\EDKTypes.log
7482 D:\Trial\zippedpath\ramcovm247_portal_765\EDKTypes.log
は私のコード
var queryList1Only2 = (from file in list1 select file).Except(list2, myFileCompare1);
var queryList1Only22 = (from file in list2 select file).Except(list1, myFileCompare1);
var difference = queryList1Only2.ToHashSet();
difference.SymmetricExceptWith(queryList1Only22);
foreach (var v in difference)
{
dest.WriteLine(v.Length + " " + v.FullName);
}
と
ですpublic class FileCompareLength : System.Collections.Generic.IEqualityComparer<System.IO.FileInfo>
{
public FileCompareLength() { }
public bool Equals(System.IO.FileInfo f1, System.IO.FileInfo f2)
{
return (f1.Length == f2.Length);
}
public int GetHashCode(System.IO.FileInfo fi)
{
string s = String.Format("{0}", fi.Length);
return s.GetHashCode();
}
}
何か提案がありますか?
あなたは「差異」をSORTすることができますか? – Bolu
@Bolu:最初のパスにすべてのファイルを書き込んだ後、2番目のパスにあるすべてのファイルを書き込んでいます...私が必要とするのは、パスにファイルを書き込んで、2番目のパスにある比較ファイル – bala3569
です。あなたがそれをリストする前に(ファイル名で)あなたが望む順序に... – Bolu