0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 14
|
||||||
1 | ||||||
Получить имя файла без полного пути01.04.2013, 00:07. Показов 21754. Ответов 28
Метки нет (Все метки)
вы друзья уж простите, я 25 страниц пролистал в поиске но не нашел ответа (может не правильно искал) тема такая:
для себя делаю прогу (потому что подруга отказывается мне зачитывать таблицы английского языка) которая тестирует по английскому языку. замысел такой чтобы из комбо бокса открывались файлы которые находятся в папке с запускаемой программой в формате xml. так вот я понял как это сделать но хочется же все чистенько (я сейчас по коду приведенному выше получаю ответ в комбе: ".\test1.xml" а хотелось бы получить "test1" а если назову-я изучаю инглиш.xml то хотелось бы получить без пути и расширения файла в списке. Еще раз повторюсь что прога делается для себя поэтому не обязательно то о чем я пишу. зы :: просто мне захотелось косметикой заняться ну и попрактиковаться заодно, но тыкал-тыкал так и не вышло( поэтому и спросил.
0
|
01.04.2013, 00:07 | |
Ответы с готовыми решениями:
28
Выделить из полного пути к файлу только имя файла Как извлечь имя файла без его полного пути и расширения? Получить имя файла без расширения Получить имя файла без расширения |
8940 / 4852 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
|
||||||
01.04.2013, 00:27 | 2 | |||||
3
|
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 14
|
|
01.04.2013, 09:12 [ТС] | 3 |
спасибо что откликнулись, все вроде бы верно но есть одно но(на форуме уже были такие ответы). в комбо боксе используется массив данных а GetFileNameWithoutExtension использовать если только в цикле. Отсюда и вопрос есть ли функция специальная для этого? (не могу поверить что в наше время до сих пор не сделали специальную функцию для вывода имен файлов в массиве)
0
|
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 14
|
|
01.04.2013, 10:24 [ТС] | 5 |
Спасибо, эти штуки я читал(гугль рулит) но суть так и осталась скрытой для меня. Как же получить список файлов в комбобоксе(массив) без пути и расширения, не прибегая к циклам. Если конечно такое возможно.
\\C:/myFile.ext -> myFile
0
|
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 14
|
|
01.04.2013, 11:48 [ТС] | 7 |
0
|
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 14
|
||||||
03.04.2013, 16:21 [ТС] | 8 | |||||
вобщем то оставил так:
0
|
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
|
||||||
03.04.2013, 17:59 | 9 | |||||
Сообщение было отмечено OwenGlendower как решение
Решение
Можно так попробовать:
3
|
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 14
|
||||||
04.04.2013, 11:27 [ТС] | 10 | |||||
Все замечательно работает вот так:
0
|
0 / 0 / 0
Регистрация: 19.04.2015
Сообщений: 5
|
|
19.04.2015, 02:39 | 11 |
Дмитрий (kodv), Благодарю! =)
0
|
589 / 307 / 17
Регистрация: 10.09.2021
Сообщений: 1,627
|
|
08.08.2023, 18:49 | 12 |
есть ещё API-функция PathStripPathW из shlwapi.dll
0
|
101 / 101 / 15
Регистрация: 23.05.2012
Сообщений: 260
|
|||||||||||
09.08.2023, 22:00 | 13 | ||||||||||
Я думаю тебе надо вот так
0
|
589 / 307 / 17
Регистрация: 10.09.2021
Сообщений: 1,627
|
|
09.08.2023, 22:02 | 14 |
PathStripPathW мне вполне подойдёт)))
0
|
Администратор
|
|
09.08.2023, 23:03 | 15 |
HackerVlad, чем она лучше чем Path.GetFileName? И кстати ТСу требовалось и расширение убрать. То есть нам нужна Path.GetFileNameWithoutExtension, как уже 10 лет назад ответили.
Добавлено через 41 минуту Плохая идея. Лучше использовать методы класса Path. Они более универсальные (поддерживают разные разделители - прямой и обратные слеши) и меньше памяти тратят. Более важно что мы два раза массив не создаем. Это резко увеличивает траты памяти.
1
|
09.08.2023, 23:40 | 16 | |||||
плюсую. Открываем метода GetFileName и видим прям комент, когда это вызовет проблемы
2
|
589 / 307 / 17
Регистрация: 10.09.2021
Сообщений: 1,627
|
|
10.08.2023, 12:49 | 17 |
Ничем ни лучше, за исключением того что работает для всех языков программирования (а ведь это плюс). Короче не все люди пишут на одном и том же языке. А вот API универсально для всех языков. Тут хоть 10 лет назад и обсуждалось, но никто не приложил API-функцию нужную. А я искал как раз API.
PathRemoveExtension из той же библиотеки shlwapi для отрезания расширения на конце вместе с точкой. Добавлено через 1 минуту Wolfdp, почему у вас нету рейтинга
0
|
10.08.2023, 13:16 | 18 |
HackerVlad, это тема по C# и в нем есть упомянутый подходящий метод.
Само наличие слеша впереди - ошибка программиста. В 9-10 постах нормальное решение. Сейчас c# кроссплатформенный и работает в том числе там, где winapi нет. Добавлено через 1 минуту HackerVlad, вот поэтому : https://www.cyberforum.ru/abou... st16981016
1
|
Администратор
|
||||||
10.08.2023, 13:27 | 19 | |||||
Знания Windows API никому не помешают, но в рамках .NET это спорный плюс. Потому что есть родная альтернатива которой проще пользоваться чем Windows API.
0
|
Wolfdp
|
10.08.2023, 14:58
Получить имя файла без полного пути
#20
|
0
|
10.08.2023, 14:58 | |
Получить имя файла без расширения Выделить из полного пути к файлу его расширение (без предшествующей точки) Получить имя файла без полного пути Получить имя файла, без полного пути Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |