2010-12-13 6 views
1

ich zwei Ordner für nicht identische Dateien mit symmetrischer Differenz und schreiben Sie die Länge und Verzeichnisnamen in eine Textdatei bin im Vergleich ... Aber es ist wiezwei Ordner für nicht identische Dateien mit SymmetricDifference vergleichen?

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 

schreiben, aber ich brauche, wie dieser nach dem anderem zu schreiben

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 

Hier ist mein Code

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); 

     } 

und

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(); 
      } 
     } 

Irgendwelche Vorschläge ??

+0

können Sie SORT "Unterschied"? – Bolu

+0

@Bolu: Es schreibt alle Dateien im ersten Pfad und dann alle Dateien im zweiten Pfad ... was ich brauche, ist eine Datei in Pfad und vergleichbarer Datei im zweiten Pfad – bala3569

+0

zu schreiben, deshalb frage ich: Kannst du es sortieren in die gewünschte Reihenfolge (nach Dateiname), bevor Sie es auflisten ... – Bolu

Antwort

Verwandte Themen