Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
#1

поиск с конца - C++

10.02.2013, 14:05. Просмотров 349. Ответов 7
Метки нет (Все метки)

помогите пожалуйста.
есть строка - src с расширением (*.*)
надо к второй строке(имя файла сохранения) добавить это расширение
как это сделать "быдлокдом" я знаю, а как с использованием stl?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2013, 14:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос поиск с конца (C++):

Поиск символа с конца строки - C++
Здравствуйте.. Как найти символ с конца строки ? Например : предложение - просто тестовый вариант. И нужно определить...

Реализовать три подпрограммы: Одинаковая четность чисел, Поиск третьей от конца цифры, Найти значение функции - C++
Всем привет! Помогите, пожалуйста в решении задачи. Знаю, что задачи более,или менее лёгкие,но я в c++ почти ничего не смыслю, а лабы...

признак конца ввода - C++
Здравствуйте. Учу С++ по книге Дейтела так вот там пример программы #include <iostream> #include <locale.h> using namespace...

Дек,заполение с конца - C++
Помогите плз написать функцию для заполнения дека с конца с клавиатуры и если можно с файла,если у нас есть: struct shop { int...

Программа не до конца работает - C++
using namespace std; int main() { int n =100; int a; cout<<"vvedite chuslo sportsmenov"<<endl; cin>>n; for (int...

Истинность конца файла - C++
Суть в чем. Есть реализация криптосистемы МакЭлисса. В входном текстовом файле считываются символы, символы разбиваются на биты, из...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
-=ЮрА=-
10.02.2013, 14:26
  #2

Не по теме:

Van111, покажи текстом что ты пытаешся воплотить, я как то недопонял задачу

Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
10.02.2013, 14:33  [ТС] #3
http://img02.taobaocdn.com/tps/i2/T1...XX-16-16.gifng
c:\download_img\0\0
окончание к второй строке надо добавить как в первой(".gifng")
хочу сделать в стиле stl , но учебник по ней только закачался)
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
10.02.2013, 14:33 #4
Для поиска с конца можно rfind использовать. Вроде так.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
 
int main()
{
    std::string str = "file.txt";
    
    std::string::size_type pos = str.rfind('.');
    std::string ext;
    
    if(pos != std::string::npos)
         ext = str.substr(pos + 1, str.size() - pos);
        
    std::cout << ext;
    
    return 0;
}
Находит последнюю точку и создает строку, в которой лежит расширение.
-=ЮрА=-
10.02.2013, 14:42
  #5

Не по теме:

Не по теме:

Van111,

Ошибка. Ссылка не работает.
Попробуйте:
Искать в Google:

просто прикрепи рисунок или напиши
ИмяФайла
МаскаРасширения
Результат : ИмяФайла + МаскаРасширения
что то в таком духе, реально я не пойму к имения файла расширение пристыковать, пристыковать *.*?
Теряюсь вобщем

go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
10.02.2013, 14:51 #6
Van111, ну можно просто в конец дописать расширение? Оператор плюс используй тогда.
-=ЮрА=-
Заблокирован
Автор FAQ
10.02.2013, 15:00 #7
Van111, короче вот как я понял
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <string>
#include <iostream>
#include <algorithm>
using namespace std;
 
int main()
{
    string filename = "FileName";
    string fileext  = "*.Ext";
    string filepath = filename;
    string::iterator sub;
    if((sub = find(fileext.begin(), fileext.end(), '.')) != fileext.end())
        filepath += sub;
    cout<<"filename : "<<filename<<endl;
    cout<<"fileext  : "<<fileext<<endl;
    cout<<"filepath : "<<filepath<<endl;
    return 0;
}
Миниатюры
поиск с конца  
Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
10.02.2013, 16:06  [ТС] #8
большое всем спасибо
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2013, 16:06
Привет! Вот еще темы с ответами:

Маркер конца строки - C++
Доброго времени суток, уважаемые форумчане.:handshake: Дело обстоит так, имеется задача &quot;Определить в заданной строке координаты подстроки,...

Условие конца файла - C++
Имеем функцию: void Inpfile (stud&amp; s) { ifstream base(&quot;base.txt&quot;); if(!base)std::cout &lt;&lt; &quot;Can't create input file&quot;; ...

Второй с конца пробел - C++
Правильно: BufferL=Buffer.length(); BufferPos=Buffer.rfind(L' ', BufferL); BufferPos=Buffer.rfind(L' ', BufferPos);?

Чтение до конца строки - C++
В файле лежит только одно слово, мне его надо считывать while по символьно, я никак не разберусь с условием вайла , while( !f.eof() ) не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
10.02.2013, 16:06
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru