2016-06-11 10 views
0

Ich möchte Dateien zwischen zwei Daten aus einem Verzeichnis erstellt werden. Die Daten werden von zwei DateTimePickers ausgewählt.So erhalten Sie Dateien aus einem Verzeichnis erstellt zwischen zwei Datumsangaben mit DateTimePickers

Beispiel (wählbar):

datetimerpicker1 = "15/09/2015"; 
datetimerpicker2 = "05/10/2015"; 

ich als var setzte

 var dataInicio = dataInicial.Value; 
     var dataFim = dataFinal.Value; 

     string entradaDeDiretorio = @"C:\\"; 

     DirectoryInfo diretorioDeEntrada = new DirectoryInfo(entradaDeDiretorio); 

     if (dataInicio != dataFim) 
     { 
      foreach (var arquivos in diretorioDeEntrada.GetFiles().Where(f => f.CreationTime >= dataInicio && f.CreationTime <= dataFim)) 
      { 
       // call the function 
      } 
     } 
     else 
     { 
      foreach (var arquivos in diretorioDeEntrada.GetFiles().Where(f => f.CreationTime == dataInicio && f.CreationTime == dataFim)) 
      { 
       // call the function           
      } 
     }  
+0

Entschuldigung! Ich habe das falsche Beispiel geschrieben. Es ist: DateTimePicker1 = "15/09/2015"; datetimerpicker2 = "05.10.2015"; – CezarSystems

+0

Ich habe das Datum festgelegt, Sie können das Update genehmigen. –

+0

@CezarSystems Sie können den Link "Bearbeiten" unter Ihrer Frage verwenden, um Ihre Frage zu bearbeiten –

Antwort

1

Wenn Sie versuchen, diese zu erhalten Dateien aus dem Verzeichnis in einem Bereich von Datum versuchen:

var directory = new DirectoryInfo(your_dir); 
var files = directory.GetFiles() 
    .Where(file => file.LastWriteTime >= DateTimePicker1 
      && file.LastWriteTime <= datetimerpicker2); 

BEARBEITEN 1: Wenn der Wert des Datums identisch ist, können Sie einfach nach beiden Datumsangaben suchen ckers Datumswert und keine Abfrage gegen einen Bereich

if(dataInicio != dataFim) 
    (var arquivos in diretorioDeEntrada.GetFiles().Where(f => f.CreationTime >= dataInicio && f.CreationTime <= dataFim)); 
else 
    (var arquivos in diretorioDeEntrada.GetFiles().Where(f => f.CreationTime == dataInicio)); 
+0

war das hilfreich für Sie? – Pushpendra

+0

Guten Morgen! Gemacht nach Beispieltests und festgestellt, dass die Where-Klausel nicht am selben Tag Dateien zurückgibt. Beispiel: Startdatum: 13.06.2016 Enddatum: 13.06.2016. kannst du mir helfen? (var arquivos in diretorioDeEntrada.GetFiles(). Wo (f => f.CreationTime> = dataInicio && f.CreationTime <= dataFim)) – CezarSystems

+0

Bitte siehe Bearbeiten 1 – Pushpendra

Verwandte Themen