/* * Lists the files and their dates */ public void ReadFiles() { DateTime dateTime = DateTime.MinValue; _dicFiles.Clear(); _errorFiles.Clear(); FileDateInfo fileDateInfo = new FileDateInfo(); string[] filters = Source.Filter.Split(new char[] { ',', ';' }, StringSplitOptions.RemoveEmptyEntries); foreach (string fltr in filters) { string filter = fltr.Trim(); Debug.Print($"-------------\r\nFilter: {filter}\r\n---------------"); string[] fileEntries = Directory.GetFiles(Source.Path, filter); foreach (string file in fileEntries) { if (!_dicFiles.ContainsKey(file) && !_errorFiles.Contains(file)) { if (fileDateInfo.GetFileDate(file, out dateTime)) { _dicFiles.Add(file, dateTime); } else { _errorFiles.Add(file); } } //Debug.Print($"{Path.GetFileName(file)} - {_dicFiles[file].ToShortDateString()}"); } } Debug.Print($"Found {_dicFiles.Count()} files"); if (_errorFiles.Count() > 0) { Debug.Print($"ERRORS: Couldn't get dates from {_errorFiles.Count()} files:"); foreach (string file in _errorFiles) { Debug.Print($"\t{Path.GetFileName(file)}"); } } }