1 / 1 / 0
Регистрация: 22.05.2014
Сообщений: 31

Дерево каталогов - не выводить определенные файлы

29.10.2014, 15:54. Показов 752. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте,помогите пожалуйста.Вот в чём вопрос.Есть метод для вывода каталогов,но он выводит ещё и ссылки на pdf файлы.У меня возник вопрос,как сделать так,чтобы ссылки с pdf не выводились?Спасибо.
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
        private void scan_cataloges(ref int ctlg_num, ref string[] cataloges, ref bool[] overlook, string page, ref string line2, int x) // ищем каталоги
        {
            if ((page[x] == 'a') && (page[x + 1] == ' ') && (page[x + 2] == 'h') && (page[x + 3] == 'r') && (page[x + 4] == 'e') && (page[x + 5] == 'f') && (page[x + 6] == '=') && (page[x + 7] == '"') && (page[x + 8] == '/'))
            {
                string line1 = page.Substring(x + 8, 254); // отсекаем подстроку от начала ссылки длиной 254 символа - предполагаем что длиннее ссылок не будет
                if (line1.Contains("\">"))    // признак окончания ссылки
                {
                    line2 = line1.Substring(0, line1.IndexOf("\">")); // отсекаем ссылку
                }
                if (line1.Contains("pdf"))    // признак окончания ссылки pdf
                {
           // Что сюда написать чтобы удаляло ссылку с pdf   ??
                }
                bool ctlg_echo = false; // ключ повтора
                for (int cataloges_num = 0; cataloges_num < cataloges.Length; cataloges_num++) // пробег по массиву
                {
                    if (line2 == cataloges[cataloges_num]) // если найденная ссылка равна уже существующей
                    {
                        ctlg_echo = true; // значит повтор
                        break; // прерывание и игнор ссылки
                    }
                }
                if (ctlg_echo == false) // если повтор не обнаружен
                {
                    ctlg_num++; // увеличиваем счётчик 
                    Array.Resize(ref cataloges, cataloges.Length + 1); // расширяем массив 
                    cataloges[ctlg_num] = line2; // и записываем в конец нашу ссылку
                    Array.Resize(ref overlook, overlook.Length + 1); // увеличиваем длину массива ключей просмотра
                    overlook[http_num] = true; // помечаем ссылку как непросмотренную
                    if (line2.Contains("http://")) // если ссылка содержит "http://", значит внешний
                    {
                        richTextBox1.Text += ctlg_num + ". Внешний каталог: " + line2 + "\r\n\r\n";
                    }
                    else // иначе лежит внутри сервера
                    {
                        richTextBox1.Text += ctlg_num + ". Каталог на сервере: " + line2 + "\r\n\r\n";
                    }
                }
            }
        }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.10.2014, 15:54
Ответы с готовыми решениями:

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

дерево каталогов
function dirs($dir, $tab) { $d = opendir($dir); // . - current directory; while ($name = readdir($d)) { if ($name ==...

дерево каталогов
Всем привет!!У меня такая проблема))Не могу понять почему у меня ничего не выводит в компоненту TreeView , хотя транслятор всё...

4
 Аватар для Дмитрий3241
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
Записей в блоге: 6
29.10.2014, 16:02
C#
1
cataloges[ctlg_num] = line2; // и записываем в конец нашу ссылку
Думаю следует удалить именно эту строку
0
1 / 1 / 0
Регистрация: 22.05.2014
Сообщений: 31
29.10.2014, 16:14  [ТС]
Попробовал,программа зависает
0
76 / 77 / 40
Регистрация: 03.06.2014
Сообщений: 463
29.10.2014, 16:36
Тебе нужно что б программа выводила только каталоги?

Добавлено через 2 минуты
какие действия выполняет эта функция?

Добавлено через 47 секунд
Это сканер директорий сайта?

Добавлено через 10 минут
Слишком замороченная функция....

может так
C#
1
2
3
4
                if (line1.Contains("pdf"))    // признак окончания ссылки pdf
                {
                    return;
                }
или так
C#
1
2
                if (ctlg_echo == false&&!line1.Contains("pdf")) // если повтор не обнаружен
                {
0
1 / 1 / 0
Регистрация: 22.05.2014
Сообщений: 31
29.10.2014, 20:56  [ТС]
Цитата Сообщение от asql Посмотреть сообщение
Тебе нужно что б программа выводила только каталоги?
Добавлено через 2 минуты
какие действия выполняет эта функция?
Добавлено через 47 секунд
Это сканер директорий сайта?
Добавлено через 10 минут
Слишком замороченная функция....
может так
Да,нужно чтоб только каталоги,а она выводит всё подряд с файлами вместе.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.10.2014, 20:56
Помогаю со студенческими работами здесь

Дерево каталогов
Помогите решить задачу с деревом каталогов.Условие на картинке.Зараннее благодарен.

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

Дерево каталогов
Из данной директории нужно сходить во все дочерние директории и в каждой из них выполнить действие. Как это сделать? Добавлено через...

Дерево каталогов
помогите разработать программу , которая выводит дерево каталогов (с нужным количеством отступов, в зависимости от уровня вложенности...

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


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

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

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: показать затраченные материалы за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В качестве. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru