Beispiel #1
0
        public static IEnumerable<DirectoryAndFiles> Recurse(string directory, string searchpattern)
        {
            var stack = new Stack<string>();
            stack.Push(directory);

            while (stack.Count > 0)
            {
                string cur_dir = stack.Pop();
                var cur_files = System.IO.Directory.GetFiles(cur_dir, searchpattern);

                var item = new DirectoryAndFiles(cur_dir,cur_files);
                yield return item;

                foreach (var sd in System.IO.Directory.GetDirectories(cur_dir))
                {
                    stack.Push(sd);
                }
            }
        }
Beispiel #2
0
        public static IEnumerable <DirectoryAndFiles> Recurse(string directory, string searchpattern)
        {
            var stack = new Stack <string>();

            stack.Push(directory);

            while (stack.Count > 0)
            {
                string cur_dir   = stack.Pop();
                var    cur_files = System.IO.Directory.GetFiles(cur_dir, searchpattern);

                var item = new DirectoryAndFiles(cur_dir, cur_files);
                yield return(item);

                foreach (var sd in System.IO.Directory.GetDirectories(cur_dir))
                {
                    stack.Push(sd);
                }
            }
        }