Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.01.2013, 11:52   #1
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,761
По умолчанию Поиск файлов Directory.GetFiles

Здравтсвуйте.
Использую для поиска файлов в папке такой код:
string[] MyFiles = Directory.GetFiles(@"D:\\Music\\", @"*1*", SearchOption.AllDirectories);

Собственно сам вопрос. Если на месте, выделенным красным, между звёздочками поставить любой символ, то поиск происходит так сказать по заданной маске, а вот если там поставить 1 (единицу) то происходит поиск всех файлов, а не по маске.
Как решить проблему?
Заранее Благодарен за ответ.

Вот что написано в МСДН:
Цитата:
Так как данный метод проверяет файлы с именами в формате 8.3 и файлы с длинными именами, шаблон поиска типа "*1*.txt" может вернуть неожиданные имена файлов.Например, шаблон поиска "*1*.txt" возвратит "longfilename.txt"", так как соответствующее имя файла в формате 8.3 будет иметь вид "LONGFI~1.TXT".
Как от этого избавится? Чтобы не проверял формат 8.3?

Последний раз редактировалось FaTaL; 15.01.2013 в 14:09.
FaTaL вне форума Ответить с цитированием
Старый 15.01.2013, 14:49   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

забавно. не знал!

ну так дополнительно проверяйте в цикле по MyFiles, какие имена подходят под вашу маску (можно через regexp) и всех делов!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.01.2013, 15:25   #3
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,761
По умолчанию

В массиве MyFiles сразу оказываются полные (длинные) пути с именами файлов. Т.е. в массиве нет строк типа ~1 и т.п. Вот в чём проблема то.
FaTaL вне форума Ответить с цитированием
Старый 15.01.2013, 18:05   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
В массиве MyFiles сразу оказываются полные (длинные) пути с именами файлов. Т.е. в массиве нет строк типа ~1 и т.п. Вот в чём проблема то.
НУ так верно. Так и должно быть (судя вашей цитате из msdn).
Это же и играет Вам на руку - удаляйте все записи, которые не соответствуют нужной Вам маске (или, создайте новый массив и туда перенесите только те записи, которые отвечают нужной Вам маске, чтобы не "дёргать" удаление в цикле).
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.01.2013, 18:20   #5
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,761
По умолчанию

Так это лишние манипуляции. Т.е. мне незачем делать поиск файлов по маске через GetFiles, а сделать поиск всех файлов и потом сортировать массив самому. Я думал может есть ещё какие-то функции.
В МСДН есть ещё функция Directory.EnumerateFiles, но она блин только на FW 4.0 и выше, а у меня проект обязательно должен быть FW 2.0

Последний раз редактировалось FaTaL; 15.01.2013 в 20:11.
FaTaL вне форума Ответить с цитированием
Старый 15.01.2013, 21:46   #6
Reskov
Форумчанин
 
Аватар для Reskov
 
Регистрация: 17.12.2008
Сообщений: 250
По умолчанию

Цитата:
Directory.EnumerateFiles
она вас не спасет она ищет по такому же принципу, встроенных функции я почти уверен нет
попробуйте на подобии этого сделать что-нить
http://stackoverflow.com/questions/7.../724184#724184
Reskov вне форума Ответить с цитированием
Старый 19.05.2013, 20:27   #7
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,761
По умолчанию

dimsil поверка
FaTaL вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск файлов prem1era Microsoft Office Access 1 23.04.2012 10:28
поиск файлов M@tBe14 Помощь студентам 1 20.09.2010 21:48
Поиск файлов Михаил Юрьевич Общие вопросы Delphi 3 25.01.2010 22:58
Поиск файлов Ralf_ru Общие вопросы Delphi 1 30.03.2009 15:42
Поиск файлов necky Общие вопросы Delphi 10 31.08.2007 00:27