URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 5108
[ Назад ]

Исходное сообщение
"разделение имени файла и расширения "

Отправлено greenetc , 02-Фев-06 18:07 
ну не получается разделить таким вот кодом

s="ffff.jpg";
strcat(s,".");
name=strtok(s,".");
extension=strtok(NULL,".");

так работает ... но если в имени файла есть точка .. то есть например Dr. Albam.mp3 то само собой не то  .... мне бы конечно лучше на С++ сделать . Может кто подскажет ?


Содержание

Сообщения в этом обсуждении
"разделение имени файла и расширения "
Отправлено Hordi , 02-Фев-06 19:19 
man strrchr

"разделение имени файла и расширения "
Отправлено greenetc , 03-Фев-06 13:37 
>man strrchr


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


"разделение имени файла и расширения "
Отправлено dimus , 03-Фев-06 14:46 
strrchar возвращает указатель на вхождение самого ПРАВОГО символа в строке.
Допустим имеем:
path/to/file/name...bla-bla.mp3

1 шаг: ищем последнее вхождение символа '/' То что за ним - имя файла с расширением
2 шаг: ищем последнее вхождение символа '.' То, что за ним - расширение


"разделение имени файла и расширения "
Отправлено greenetc , 04-Фев-06 20:33 
>strrchar возвращает указатель на вхождение самого ПРАВОГО символа в строке.
>Допустим имеем:
>path/to/file/name...bla-bla.mp3
>
>1 шаг: ищем последнее вхождение символа '/' То что за ним -
>имя файла с расширением
>2 шаг: ищем последнее вхождение символа '.' То, что за ним -
>расширение


спасибо за ответы.
Всё решил в С++ элементарно через find и substr .


"разделение имени файла и расширения "
Отправлено landor , 05-Фев-06 19:07 
Я когда перешел на С(точнее на С++), то не долго думая сразу описал класс с инкапсулированым буффером, идентификатором длины и кучей методов и со строками у меня проблем вообще не возникает, те там куча функций-членов для поиска(с конца, с указанной позиции, и прочии комбинации...) и не только к тому же... - короче до пса всего. Там внутри именно эти стандартные ф-и. Причем это хозяйство прекрасно работает в перемешку с классическими строками. Если надо, могу дать.

"разделение имени файла и расширения "
Отправлено chip , 05-Фев-06 23:45 
>Я когда перешел на С(точнее на С++), то не долго думая сразу
>описал класс с инкапсулированым буффером, идентификатором длины и кучей методов и
>со строками у меня проблем вообще не возникает, те там куча
>функций-членов для поиска(с конца, с указанной позиции, и прочии комбинации...) и
>не только к тому же... - короче до пса всего. Там
>внутри именно эти стандартные ф-и. Причем это хозяйство прекрасно работает в
>перемешку с классическими строками. Если надо, могу дать.

Пан, в очередной раз доказываете свою велосипедную направленность и юношеский максимализм.

Откройте книжку на умном слове STL



"разделение имени файла и расширения "
Отправлено landor , 06-Фев-06 18:47 
>Пан, в очередной раз доказываете свою велосипедную направленность и юношеский максимализм.
>
>Откройте книжку на умном слове STL

Спасибо! Знал, что напишите именно Вы и именно это. Знаете, я большой любитель велосипедного дела 8), нескрою. А то что я пытаюсь делать велосипеды, руководствуясь, как Вы сказали максимализмом, то Вы, пожалуй не правы - скорее мазохизмом ;) А насчет велосипидизма, так это это относится больше к людям, пишущим калькулятор за калькулятором на конченом делфи или/и васике. Опять же взаимно ничего личного, уважаемый Chip.