Файловый ввод и ввывод - вопрос №201109

Добрый день.

Задача: нужно извлечь подкаталоги из каталога. Например я указываю каталог С:\, далее идут 13 подкаталогов, как провести такую же манипуляцию с этими каталогами? То есть, какие подкаталоги существуют в этих 13 каталогах? Надеюсь я ясно поставил свой вопрос?
А вот и сам код:   

DirectoryInfodir = newDirectoryInfo(@«C:\»);  //Каталог для манипуляции данными

DirectoryInfo[] subDir = dir.GetDirectories();  //Подкаталоги для дальнейшего рассмотрения       

foreach(DirectoryInfodri indirArr)            

Console.WriteLine(dri.FullName);      

Console.WriteLine("\n"+ subDir.Length +"\n");

Заранее благодарю.



Дополнение автора от 11.02.12 15:06:17

Уровень просмотра вложений идет до конца. Типа что-то на подобии комманды tree в cmd (коммандной строке).

11.02.12
3 ответа

Ответы

надо только на три уровня вложенности каталогов заглянуть?:) и составить список, так?

11.02.12

только может быть лучше использовать класс не DirectoryInfo, а Directory

http://msdn.microsoft.com/ru-ru/library/system.io.directory.aspx

там как раз есть GetDirectories. Потом используя рекурсию:) и foreach доберёшься до любой папки на всю глубину вложенности.

11.02.12
Выборка всех файлов директории, включая поддиректории. Если нам необходимо просмотреть все поддиректории, то в методе Directory.GetFiles() следует указать третий параметр SearchOption – перечисление, которое может принимать два значения AllDirectories/TopDirectoryOnly. Из названий уже само собой понятно какой параметр следует выбрать для поиска в поддиректориях.<br <br <br string[]fullfilesPath = <br Directory.GetFiles(@"d:\MyProject\MyFiles\", "*.*", <br SearchOption.AllDirectories); <br Удаление ненужных файлов директории. После получения имен необходимых файлов мы можем их удалить следующим способом:<br <br Array.ForEach(fullfilesPath, <br delegate(string currentPath) <br { <br // File.Delete(currentPath); <br } <br );
15.02.12
Посмотреть всех экспертов из раздела Технологии > .Net/C#
Пользуйтесь нашим приложением Доступно на Google Play Загрузите в App Store