![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Neymexa |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
Есть у кого исходники поисковика файлов.
Пример указываем директорию и находим в ней файлы определенной директории ну например .xml |
|||
|
||||
SKrivosein |
|
|||
![]() Идущий в даль ![]() ![]() Профиль Группа: Участник Сообщений: 271 Регистрация: 9.6.2007 Где: Praha - Прага Репутация: 4 Всего: 8 |
Если тебя правильно понял то примитивно:
Чтобы идти глубже используй ещё GetDirectories() , вернёт все поддиректории. Ну ещё покапайся System.IO. Надеюсь помог. |
|||
|
||||
Rififi |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: нет Всего: 36 |
Neymexa,
Есть у кого исходники поисковика файлов. у Microsoft. Качаешь NetMassDownloader, качаешь исходники .Net Framework, ищешь реализацию функций DirectoryInfo.GetFiles(...) |
|||
|
||||
-Mikle- |
|
||||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 4 Всего: 59 |
Лучше тогда так:
-------------------- Если тебе плюют в спину, значит ты впереди... |
||||
|
|||||
Neymexa |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
благодарю за код но вот на счет этого кода
static void Main(string[] args) { DirectoryInfo di = new DirectoryInfo(@"C:\Windows"); FileInfo[] fi_array = di.GetFiles(); //вот эта строка-объект fi_array а вот FileInfo[] откуда взяли? |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 8 Всего: 67 |
Neymexa, FileInfo[] - это массив объектов типа FileInfo
-------------------- СУВ, Partizan. |
|||
|
||||
Neymexa |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
библиотеку using System.Collections.Generic; из-за этого подключаем? А на счет FileInfo[] спасибо |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 8 Всего: 67 |
Neymexa, да вроде бы как нет
![]() -------------------- СУВ, Partizan. |
|||
|
||||
Neymexa |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
парни я хочу сделать не консоль а через форму. я попытаюсь - если что поможете? думаю трудность будет в выводе файлов. необходимо наверно делать вывод результатов через массив? Добавлено через 3 минуты и 54 секунды еще может кто знает хороший русскоязычный ресурс по C#-многие советуют msdn но я плохо понимаю английский а rsdn фигня - искал что нужно так и не нашел |
||||
|
|||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 8 Всего: 67 |
Neymexa, msdn переведён отчасти на русский язык, а rsdn - один из лучших русскоязычных ресурсов по программированию.
-------------------- СУВ, Partizan. |
|||
|
||||
SKrivosein |
|
||||
![]() Идущий в даль ![]() ![]() Профиль Группа: Участник Сообщений: 271 Регистрация: 9.6.2007 Где: Praha - Прага Репутация: 4 Всего: 8 |
Neymexa ты спросил, мы обьяснили как сделать такой моторчик, консоль - не консоль.
зависит на том что ты имееш в виду, продумай какой должен быть результат, выписать их, распечатать и т.п. |
||||
|
|||||
Neymexa |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
форма примерно такая поле ввода кнопка и listbox там будет выводится список найденных файлов.ну вот пока все можно докопаться и сделать маленькое меню.но это потом |
||||||
|
|||||||
SKrivosein |
|
|||
![]() Идущий в даль ![]() ![]() Профиль Группа: Участник Сообщений: 271 Регистрация: 9.6.2007 Где: Praha - Прага Репутация: 4 Всего: 8 |
Копался в этом не много дольше и нашёл (методом тыка) что далеко не все файлы и директории можно так "иследовать".
Допустим при попытке стелать это
получим исключение: "В доступе на директории C:\ System Volume Information отказано." Тоже самое делают некоторые файлы, антивираки и т.п. Без блока try - catch можно поймать трудно уловимую ошибку, которую сам Windows почему то игнорирует. По крайней мере мне не появлялась стандартная "unhandled exception". ----------------------------------------- А ещё смайлика нарисую -> ![]() Это сообщение отредактировал(а) SKrivosein - 22.3.2009, 20:24 |
|||
|
||||
Neymexa |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
наверно эти файлы с необычным доступом - типо системный или скрытый .
благодарю езе раз ![]()
хочу переделать код из консоли в форму . вопрос ?- при передаче данных в DirectoryInfo вместо @"C:\Windows" я буду вставлять из texbox1.text при инициализации переменной не будет ли ошибки string i; i=textbox1.text; DirectoryInfo di = new DirectoryInfo(i); // ошибки не будет? Это сообщение отредактировал(а) Neymexa - 23.3.2009, 22:18 |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 8 Всего: 67 |
Neymexa, ошибки времени компиляции точно не будет
![]() -------------------- СУВ, Partizan. |
|||
|
||||
Neymexa |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
Ну как я и говорил у меня ошибка - не знаю как ее обойти
string i; i=textbox1.text; DirectoryInfo di = new DirectoryInfo(i); пишет путь имеет недопустимую форму. |
|||
|
||||
Rififi |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: нет Всего: 36 |
Neymexa,
путь имеет недопустимую форму привести путь к допустимой форме гооглить "win32 naming file path" |
|||
|
||||
Neymexa |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
хм что то не получается
|
|||
|
||||
ZmeyNet |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 25.1.2008 Где: Belarus, Minsk Репутация: нет Всего: нет |
что то у меня закралось подозрение что автор изобретает OpenFileDialog
|
|||
|
||||
SKrivosein |
|
|||
![]() Идущий в даль ![]() ![]() Профиль Группа: Участник Сообщений: 271 Регистрация: 9.6.2007 Где: Praha - Прага Репутация: 4 Всего: 8 |
Neymexa ты откуда путь директории брать собираешся?
Если у тебя человек руками вводит то помоему лучше в форму бросить с Toolbox диалог Folder Browser Dialog и выбирать с него. Если хочеш всёж с техт-бокса то путь должен быть полный и сконтролируй его, чет типа
и по идее не должно быть проблем. Если получаеш директорию программно, ну допустим с базы данных, тоже проверь если существует. А вот если путь не полный то помоему никакого простого решения нет, или я его пока не знаю ![]() Это сообщение отредактировал(а) SKrivosein - 27.3.2009, 21:20 |
|||
|
||||
Neymexa |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 11.12.2008 Репутация: нет Всего: нет |
SKrivosein чтоб я без тебя делал бы? наверно вот что -
![]() ![]() ![]() ![]() ой что то не получается вызвать buttonSelectDirectory_Click.как это сделать? ну с простой кнопкой то просто на ней кликаешь и все.есть также у этого компонента свойство shownewfolderbutton у меня оно true что на счет поля ввода да я и хотел чтобы мне подсказали какой компонент использовать.я нашел directoryentry and directorysearcher думал подойдут но сейчас кажется нет Это сообщение отредактировал(а) Neymexa - 27.3.2009, 22:33 |
|||
|
||||
VirusUZ |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 9.4.2010 Где: Узбекистан, Навои й обл. Репутация: нет Всего: -2 |
/////////// in C#
//get directory foreach (string d in Directory.GetDirectories("C:\\a", "*b*")) { MessageBox.Show(d); } // get file foreach (string d in Directory.GetFiles("C:\\a", "*.dat")) { MessageBox.Show(d); } Это сообщение отредактировал(а) VirusUZ - 30.6.2010, 07:58 --------------------
Virus |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |