示例#1
0
 public override int GetHashCode()
 {
     return(Ratio.GetHashCode() ^ Path.GetHashCode() ^ FilePrefix.GetHashCode() ^ FileSuffix.GetHashCode());
 }
示例#2
0
        public List <FileScan> ScanDirectory(string directoryName)
        {
            if (!Directory.Exists(directoryName))
            {
                return(new List <FileScan>());
            }
            string[]        files   = Directory.GetFiles(directoryName);
            List <FileScan> entries = new List <FileScan>(files.Length);

            foreach (string file in files)
            {
                if (Path.GetFileName(file).ToLower().StartsWith(FilePrefix.ToLower()) && file.ToLower().EndsWith(FileSuffix.ToLower()))
                {
                    entries.Add(ScanFile(file));
                }
            }

            if (ScanRecursively)
            {
                string[] directories = Directory.GetDirectories(directoryName);
                foreach (string directory in directories)
                {
                    entries.AddRange(ScanDirectory(directory));
                }
            }
            return(entries);
        }