public DemonstrateFileSelector(string[] args) { this._directory = "."; this._recurse = true; for (int i = 0; i < args.Length; i++) { switch (args[i]) { case "-?": Usage(); Environment.Exit(0); break; case "-directory": i++; if (args.Length <= i) { throw new ArgumentException("-directory"); } this._directory = args[i]; break; case "-norecurse": this._recurse = false; break; default: if (this._selectionCriteria != null) { throw new ArgumentException(args[i]); } this._selectionCriteria = args[i]; break; } if (this._selectionCriteria != null) { this.f = new FileSelector(this._selectionCriteria); } } }
public void Run() { if (this.f == null) { this.f = new FileSelector("name = *.jpg AND (size > 1000 OR atime < 2009-02-14-00:00:00)"); } Console.WriteLine("\nSelecting files:\n" + this.f.ToString()); var files = this.f.SelectFiles(this._directory, this._recurse); if (files.Count == 0) { Console.WriteLine("no files."); } else { Console.WriteLine("files: {0}", files.Count); foreach (string file in files) { Console.WriteLine(" " + file); } } }