Как искать в имени файла?

shaba777

Client
Регистрация
10.12.2011
Сообщения
22
Благодарностей
0
Баллы
1
как поискать по папкам, содержит ли какой-нибудь файл в своем имени определенное слово?
 

shaba777

Client
Регистрация
10.12.2011
Сообщения
22
Благодарностей
0
Баллы
1

shaba777

Client
Регистрация
10.12.2011
Сообщения
22
Благодарностей
0
Баллы
1

shaba777

Client
Регистрация
10.12.2011
Сообщения
22
Благодарностей
0
Баллы
1
создал file.txt в папке, указал ее, сделал все как у Вас на скрине и ничего не находит.. подскажите плиз, в чем причина?
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 452
Благодарностей
1 886
Баллы
113
Да, сейчас попробовал у себя, как то криво оно работает.
Есть еще вариант - берете список файлов в нужной папке с учетом поддиректорий, отправляете результат в список, дальше операции над списком - удалить строки - удалить элементы не содержащие текст и в этом поле указываете свой ключ. Таким образом в списко останутся только директории к файлам, которые содержат этот ключ.
 
  • Спасибо
Реакции: shaba777

shaba777

Client
Регистрация
10.12.2011
Сообщения
22
Благодарностей
0
Баллы
1
Да, сейчас попробовал у себя, как то криво оно работает.
Есть еще вариант - берете список файлов в нужной папке с учетом поддиректорий, отправляете результат в список, дальше операции над списком - удалить строки - удалить элементы не содержащие текст и в этом поле указываете свой ключ. Таким образом в списко останутся только директории к файлам, которые содержат этот ключ.
нужно учитывать регистр( если ключевое слово для поиска "KeyWord", а в названии "keyword", то поиск будет неудачен.

как это обойти?
 

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113
c# сниппет
var list = project.Lists["список с фаилами"];
var list2 = project.Lists["список для нужных фаилов"];
string mask = project.Variables["имя переменной в которой лежит маска фаила"];
mask=mask.ToLower();
foreach (string str in list)
{
str=str.ToLower();
if(str.Contains(mask))
{
list2.Add(str);
}
}
return 0;

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

var list = project.Lists["список с фаилами"];
string mask = project.Variables["имя переменной в которой лежит маска фаила"];
mask=mask.ToLower();
foreach (string str in list)
{
str=str.ToLower();
if(str.Contains(mask))
{
return str;
}
}
return "нет нифига";
 
  • Спасибо
Реакции: shaba777 и Wide

shaba777

Client
Регистрация
10.12.2011
Сообщения
22
Благодарностей
0
Баллы
1
c# сниппет
var list = project.Lists["список с фаилами"];
var list2 = project.Lists["список для нужных фаилов"];
string mask = project.Variables["имя переменной в которой лежит маска фаила"];
mask=mask.ToLower();
foreach (string str in list)
{
str=str.ToLower();
if(str.Contains(mask))
{
list2.Add(str);
}
}
return 0;

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

var list = project.Lists["список с фаилами"];
string mask = project.Variables["имя переменной в которой лежит маска фаила"];
mask=mask.ToLower();
foreach (string str in list)
{
str=str.ToLower();
if(str.Contains(mask))
{
return str;
}
}
return "нет нифига";
Класс. Спасибо всем большое :-)
 

Кто просматривает тему: (Всего: 3, Пользователи: 0, Гости: 3)