Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как получить имя файла зная его путь, Работа со строками 
V
    Опции темы
NOCaut
Дата 11.5.2011, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 5.12.2008

Репутация: нет
Всего: 0



у меня есть  путь:
Код
wchar_t *s = L"C:\\Users\\PowerPC\\777\\asf.tmp\0";
_wcsdup( s );

какой фкцией можно получить: "asf.tmp"? Спасибо!

Добавлено через 5 минут и 2 секунды
нашол strtok

Добавлено через 11 минут и 34 секунды
А можно пример как сней работатьь?
PM MAIL   Вверх
Alca
Дата 11.5.2011, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 2
Всего: 50



splitpath

Добавлено @ 14:40
Цитата

нашол strtok

http://www.cplusplus.com/reference/clibrary/cstring/strtok/

Это сообщение отредактировал(а) Alca - 11.5.2011, 14:40


--------------------
PM WWW ICQ Skype Jabber   Вверх
NOCaut
Дата 11.5.2011, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 5.12.2008

Репутация: нет
Всего: 0



И для такого типа wchar_t * - ета фия неподходит
PM MAIL   Вверх
borisbn
Дата 11.5.2011, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Цитата(NOCaut @  11.5.2011,  14:42 Найти цитируемый пост)
И для такого типа wchar_t * - ета фия неподходит

strtok, пожалуй, не подходит, а у ф-ции splitpath, которую дал Alca, есть вариант 
Цитата

void _wsplitpath(
   const wchar_t *path,
   wchar_t *drive,
   wchar_t *dir,
   wchar_t *fname,
   wchar_t *ext 
);

единственный минус, что она не кроссплатформенная.
Собственно говоря, написать свою - 15 минут делов. На чистом Си++.
wstring::find_last_of( "/" ) и т.д. и т.п.


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
NOCaut
Дата 11.5.2011, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 5.12.2008

Репутация: нет
Всего: 0



ок спс гляну
PM MAIL   Вверх
Alca
Дата 11.5.2011, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 2
Всего: 50





--------------------
PM WWW ICQ Skype Jabber   Вверх
volatile
Дата 12.5.2011, 00:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 16
Всего: 85



Цитата(NOCaut @  11.5.2011,  14:23 Найти цитируемый пост)
wchar_t *s = L"C:\\Users\\PowerPC\\777\\asf.tmp\0";

NOCaut, в С/С++ не нужно ставить ноль в конце строки вручную. Компилятор и так добавит.
А у вас уже перебор, 2 нуля.

Цитата(borisbn @  11.5.2011,  15:29 Найти цитируемый пост)
единственный минус, что она не кроссплатформенная.

borisbn, имхо тут вопрос о кроссплатформенности не стоит. Чел, вроде бы, под Winapi + COM пишет чтото...
так что _wsplitpath это как раз то, что доктор прописал. smile 
PM MAIL   Вверх
xvr
Дата 12.5.2011, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 35
Всего: 223



Цитата(NOCaut @  11.5.2011,  14:23 Найти цитируемый пост)
какой фкцией можно получить: "asf.tmp"?

Код

wchar_t *s = L"C:\\Users\\PowerPC\\777\\asf.tmp";
s=wcsrchr(s,L"\\")+1;

PM MAIL   Вверх
NOCaut
Дата 12.5.2011, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 5.12.2008

Репутация: нет
Всего: 0



Всем спасибо!
PM MAIL   Вверх
bsa
Дата 12.5.2011, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196




 ! 
bsa
NOCaut, тебе сколько раз говорить, чтобы ты помечал тему решенной?

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0687 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.