Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Маска ввода имени файла / 9 сообщений из 9, страница 1 из 1
10.07.2017, 15:04
    #39485810
yura1985
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
Добрый день всезнающий пипл.
Подскажите, пожалуйста, как лучше реализовать анализ правильности названия файла файла.
У меня файл имеет структуру NN_TEST_DDMMYYYY.dbf, где
NN - 2 цифры
Я начал проверку с
Код: c#
1.
Int32.TryParse(fileName.Substring(0, 2)

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

Как мне лучше проверить имя данного файла? Есть какие то варианты с использование маски в App.config?
...
Рейтинг: 0 / 0
10.07.2017, 15:07
    #39485812
yura1985
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
Добрый день всезнающий пипл.
Подскажите, пожалуйста, как лучше реализовать анализ правильности названия файла файла.
У меня файл имеет структуру NN_TEST_DDMMYYYY.dbf, где
NN - 2 цифры
Я начал проверку с
Код: c#
1.
Int32.TryParse(fileName.Substring(0, 2)

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

Как мне лучше проверить имя данного файла? Есть какие то варианты с использование маски в App.config?
...
Рейтинг: 0 / 0
10.07.2017, 15:32
    #39485825
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
Регулярные выражения
...
Рейтинг: 0 / 0
10.07.2017, 15:40
    #39485832
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
yura1985,
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
void Main()
{
	string mask = @"\d{2}_TEST_(0[1-9]|[12]\d|3[01])(0[1-9]|1[0-2])\d{1,4}\.DBF";
	Regex rx = new Regex(mask, RegexOptions.IgnoreCase);

	string[] tests = {"33_TEST_10072017.dbf", "33_TEST_10132017.dbf"};
	
	foreach(string test in tests)
	{
		Match m = rx.Match(test);	
		Console.WriteLine("FileName:{0} IsValid:{1}", test, m.Success);
	}

}

...
Рейтинг: 0 / 0
11.07.2017, 09:28
    #39486248
Syrex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
Может через регулярки?
...
Рейтинг: 0 / 0
11.07.2017, 11:46
    #39486400
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
SyrexМожет через регулярки?
Маска ввода имени файла
...
Рейтинг: 0 / 0
11.07.2017, 16:34
    #39486759
yura1985
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
регулярные выражения - зло.
Как по другому?
...
Рейтинг: 0 / 0
11.07.2017, 18:10
    #39486855
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
yura1985регулярные выражения - зло.
Как по другому?
ANTLR
...
Рейтинг: 0 / 0
11.07.2017, 18:28
    #39486862
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Маска ввода имени файла
yura1985регулярные выражения - зло.
не осилил что ли?
ну пиши конечный автомат сам
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Маска ввода имени файла / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]