Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/43: Рейтинг темы: голосов - 43, средняя оценка - 4.67
Non stop
0 / 0 / 1
Регистрация: 12.09.2011
Сообщений: 8
1

Получение всех имен файлов в папке и во вложенных подпапках

02.01.2012, 14:09. Просмотров 7904. Ответов 9
Метки нет (Все метки)

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        FolderBrowserDialog SFD = new FolderBrowserDialog();
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
 
        private void button2_Click(object sender, EventArgs e)
        {
           
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
 
            if (SFD.ShowDialog() == DialogResult.OK)
            {
                   string foldername = this.SFD.SelectedPath;
                    foreach (string f in Directory.GetFiles(foldername))
                        this.listBox1.Items.Add(f);
Подскажите, пожалуйста, как сделать чтобы можно было просмотреть файлы не только в данной папке но и вложенных !!!
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.01.2012, 14:09
Ответы с готовыми решениями:

Проверить и изменить названия всех файлов в текущей папке и подпапках
Работаю в Visual Studio 2012. Собственно, нужно проверить длину имён всех файлов и сократить...

Получения всех файлов в папке и подпапках игнорируя ошибку с правами доступа
К слову сам вопрос. Как получить все файлы в папке и подпапках игнорирую ошибку с правами доступа...

Поиск файлов в папке и подпапках
Приветствую всех. Есть папка, в ней много подпапок, в каждой из которых находятся файлы. Мне...

Создание списка файлов в папке и подпапках
Здравствуйте. Есть папка с подпапками, названия могут быть разные. Нужно получить список всех...

Получить список файлов в папке и подпапках
Каким образом получить список файлов в текущей папке приложения и всех подпапках рядом, с учетом...

9
NowMatrix
96 / 79 / 16
Регистрация: 14.01.2011
Сообщений: 438
02.01.2012, 14:20 2
алгоритм обхода деревьев вам в помощь.
0
Памирыч
Почетный модератор
21097 / 8825 / 1080
Регистрация: 11.04.2010
Сообщений: 11,012
02.01.2012, 14:28 3
Может,
C#
1
Directory.GetFiles(foldername , "*.mp3", SearchOption.AllDirectories );
1
NowMatrix
96 / 79 / 16
Регистрация: 14.01.2011
Сообщений: 438
02.01.2012, 14:56 4
Памирыч, ну конечно этот путь гораздо легче))
0
02.01.2012, 14:56
Памирыч
02.01.2012, 14:59
  #5

Не по теме:

NowMatrix, а я всегда мечтал свой алгоритм написать, да руки не оттуда

0
kolorotur
Эксперт .NET
11886 / 9442 / 2412
Регистрация: 17.09.2011
Сообщений: 16,150
Завершенные тесты: 1
02.01.2012, 15:14 6
C#
1
2
3
4
5
6
7
8
9
10
11
IEnumerable<FileInfo> EnumerateFiles(string path, string filter)
{
    var files = Enumerable.Empty<FileInfo>();
    try {
        var root = new DirectoryInfo(path);
        files = root.EnumerateFiles(filter);
        files = files.Concat(root.EnumerateDirectories().SelectMany(dir => EnumerateFiles(dir.FullName, filter)));
    }
    catch (UnauthorizedAccessException) {}
    return files;
}
Не будет крашиться на папках с закрытым доступом.
2
Петррр
6182 / 3483 / 898
Регистрация: 28.10.2010
Сообщений: 5,928
02.01.2012, 15:18 7
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;
using System.IO;
 
class MainClass
{
    public static void PrintFiles(string dir, UInt16 fieldSize)
    {
        DirectoryInfo dirInfo = new DirectoryInfo(dir);
        FileInfo[] files = dirInfo.GetFiles();
        foreach(FileInfo file in files)
            Console.WriteLine(file.Name.PadLeft(fieldSize));
        DirectoryInfo[] dirs = dirInfo.GetDirectories();
        foreach(DirectoryInfo d in dirs)
            PrintFiles(d.FullName, (UInt16)(fieldSize + 4));
    }
    public static void Main (string[] args)
    {
        PrintFiles("путь", 0);
        Console.ReadKey(true);
    }
}
1
NowMatrix
96 / 79 / 16
Регистрация: 14.01.2011
Сообщений: 438
02.01.2012, 15:24 8
Памирыч, а я всё собираюсь,да никак руки не дойдут.Может конечно и не смогу,не спорю..
0
Non stop
0 / 0 / 1
Регистрация: 12.09.2011
Сообщений: 8
02.01.2012, 19:48  [ТС] 9
Конечно всем огромное спасибо))) Но честно ничего не поняла , постараюсь разобраться.
А то программа далеко не по моему уровню(((
0
Non stop
0 / 0 / 1
Регистрация: 12.09.2011
Сообщений: 8
04.01.2012, 23:13  [ТС] 10
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
using System.IO;
 
namespace Folderviewer
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog fbd = new FolderBrowserDialog();
            fbd.ShowNewFolderButton = false;
 
            if (fbd.ShowDialog() == DialogResult.OK)
            {
                string katalog = fbd.SelectedPath;
             analizujKatalog(new DirectoryInfo(katalog));
            }
 
        }
 
        private void analizujKatalog(DirectoryInfo di)
        {
            FileInfo[] pliki = di.GetFiles("*.*");
            listBox1.Items.Add("Pliki w katalogu " + di.FullName + ":");
            foreach (FileInfo fi in pliki)
            {
                DateTimePicker dateTimePicker1 = new DateTimePicker();
                DateTime time = fi.CreationTime;
               
 
                
               
           
 
            
    
                listBox1.Items.Add(fi.ToString() + " czas utworzenia: " + fi.CreationTime + " rozmiar pliku: " + fi.Length);
            }
 
            DirectoryInfo[] katalogi = di.GetDirectories();
            foreach (DirectoryInfo dirinfo in katalogi)
                analizujKatalog(dirinfo);
        }
 
        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            
        }
Как сделать чтобы высветлились файлы зависимо от даты , выбраной в datetime picker
0
04.01.2012, 23:13
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2012, 23:13

Подсчет количества файлов в подпапках (Ошибка при попытке доступа к папке)
Граждане, у меня возникла проблема, с которой безуспешно борюсь уже как 2 недели :wall: Помощь...

Записать в файл список найденных в указанной папке и подпапках файлов меньших указанного размера
Пользователь вводит адрес папки и размер в байтах. Программа записывает в результирующий файл...

Получение имен файлов из полного пути
Доброго времени суток. Не подскажите, как получить все имена файлов из файла с exeшником? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru