Esempio n. 1
0
        public static Folder TraverseFolders(string path, ref Folder myFolder)
        {
            //DirectoryInfo di = new DirectoryInfo(path);
            //Folder myFolder = new Folder(di.Name);
            var subFolders = Directory.GetDirectories(path);

            var files = Directory.GetFiles(path);
            foreach (var file in files)
            {
                FileInfo fi = new FileInfo(file);
                File fileToAdd = new File(fi.Name, fi.Length);
                myFolder.AddFile(fileToAdd);
            }

            foreach (var subFolder in subFolders)
            {
                DirectoryInfo dir = new DirectoryInfo(subFolder);
                Folder folderToAdd = new Folder(dir.Name);
                myFolder.AddFolder(folderToAdd);

                TraverseFolders(subFolder, ref folderToAdd);
            }

            return myFolder;
        }