Имя файла из полного пути

  • Автор темы Автор темы Evgeny76
  • Дата начала Дата начала

Evgeny76

Client
Регистрация
11.09.2015
Сообщения
193
Реакции
88
Баллы
28
Добрый вечер!
Подскажите, как из полного пути к файлу взять только имя файла без расширения?
То есть вот путь: C:\papka\papka2\papka3\file.txt Мне нужно после обработки регуляркой иметь "file"
В конструкторе задавал от символа "\" до ".", но что-то не получается
 
Добрый вечер!
Подскажите, как из полного пути к файлу взять только имя файла без расширения?
То есть вот путь: C:\papka\papka2\papka3\file.txt Мне нужно после обработки регуляркой иметь "file"
В конструкторе задавал от символа "\" до ".", но что-то не получается
экшен Обработка текста - Замена (Regex): .*\\ заменить на пустоту..
останется file.txt
а дальше регуляркой .*(?=\.txt) тоже в экшене Обработка текста - Regex выделить file
 
экшен Обработка текста - Замена (Regex): .*\\ заменить на пустоту..
останется file.txt
а дальше регуляркой .*(?=\.txt) тоже в экшене Обработка текста - Regex выделить file

Получилось, спасибо.
А почему же одним действием не получается сделать?
 
Этот код возвращает только часть имени

надо обработать такую строку

/media/wallpapers_dl/1/148/1474642-spaceships-flying-above-the-skyscrapers.jpg

Если ее вставить в первый код как значение, то норм обрабатывается, а через переменную возвращает результат 1474642
 
Этот код возвращает только часть имени

надо обработать такую строку

/media/wallpapers_dl/1/148/1474642-spaceships-flying-above-the-skyscrapers.jpg

Если ее вставить в первый код как значение, то норм обрабатывается, а через переменную возвращает результат 1474642

2016-11-11_233951.png
 
  • Оценить
Реакции: major555
если слеш в пути у тебя так берётся как ты скинул то вот так сделай
Код:
Развернуть Свернуть Копировать
var url = project.Variables["Url"].Value.Replace("\\/", "\\");
return Path.GetFileNameWithoutExtension(url);
 
  • Оценить
Реакции: Folt и major555
хотя стоять, чёт я сразу не проверил, всё берёт как надо

2016-11-11_234710.png
 
  • Оценить
Реакции: major555
Все в первом примере как надо. Я ж тебе спасибку отправил).
 
Код:
Развернуть Свернуть Копировать
var url = project.Variables["Url"].Value;
return Path.GetFileNameWithoutExtension(url);

Спасибо, регулярные выражения постоянно ловили исключения, этот код ультимативный.

Может, кто знает аналоги под "имя+расширение" файла и просто "расширение" файла, чтобы закрыть вопрос раз и навсегда через C#?
 
Может, кто знает аналоги под "имя+расширение" файла и просто "расширение" файла, чтобы закрыть вопрос раз и навсегда через C#?
92766

C#:
Развернуть Свернуть Копировать
string path = @"C:\Program Files\AkelPad\1.txt";
string file_name = string.Empty;

// Просто расширение
file_name = Path.GetExtension(path);
project.SendInfoToLog(file_name);   

// Просто имя
file_name = Path.GetFileNameWithoutExtension(path);
project.SendInfoToLog(file_name);

// Имя и расширение
file_name = Path.GetFileName(path);
project.SendInfoToLog(file_name);

// Путь к папке с этим файлом
file_name = Path.GetDirectoryName(path);
project.SendInfoToLog(file_name);

// Путь к диску
file_name = Path.GetPathRoot(path);
project.SendInfoToLog(file_name);
 
Посмотреть вложение 92766
C#:
Развернуть Свернуть Копировать
string path = @"C:\Program Files\AkelPad\1.txt";
string file_name = string.Empty;

// Просто расширение
file_name = Path.GetExtension(path);
project.SendInfoToLog(file_name);  

// Просто имя
file_name = Path.GetFileNameWithoutExtension(path);
project.SendInfoToLog(file_name);

// Имя и расширение
file_name = Path.GetFileName(path);
project.SendInfoToLog(file_name);

// Путь к папке с этим файлом
file_name = Path.GetDirectoryName(path);
project.SendInfoToLog(file_name);

// Путь к диску
file_name = Path.GetPathRoot(path);
project.SendInfoToLog(file_name);

Исчерпывающий ответ. Спасибо большое.
 

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