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

Сформировать имя второго файла из имени первого добавлением текстового постфикса "_comp" - C++

Восстановить пароль Регистрация
 
Nastya15684
0 / 0 / 0
Регистрация: 12.10.2015
Сообщений: 133
27.11.2015, 16:10     Сформировать имя второго файла из имени первого добавлением текстового постфикса "_comp" #1
Есть файл с информацией, я ввожу его имя для открытия и дальше работаю с ним.
C++
1
2
3
4
char filename[20];
cout << "Введите имя файла: ";
cin.getline(filename, 20);
ifstream in(filename);
Потом мне нужно другую информацию записать в файл, имя которого сформирован из имя первого файла добавлением текстового постфикса «_comp».
Как это сделать?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2015, 16:10     Сформировать имя второго файла из имени первого добавлением текстового постфикса "_comp"
Посмотрите здесь:

C++ перегрузка постфикса ++ для работы с массивом (почему-то не пашет)
C++ Добавить в конец первого файла содержимое второго файла
Записать в третий файл только те пары чисел, в которых число из первого файла меньше соответствующего числа из второго файла. C++
Сформировать массив из положительных элементов первого и отрицательных второго C++
C++ Выходной поток первого числа, второго , суммы первого и второго чисел
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ivan37
52 / 52 / 45
Регистрация: 11.05.2015
Сообщений: 127
27.11.2015, 17:49     Сформировать имя второго файла из имени первого добавлением текстового постфикса "_comp" #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{
    string filename;
    cin>>filename;
    size_t pos = filename.find(".txt");
    filename.insert(pos,"_comp");
    cout << filename;
    return 0;
}
Nastya15684
0 / 0 / 0
Регистрация: 12.10.2015
Сообщений: 133
27.11.2015, 20:30  [ТС]     Сформировать имя второго файла из имени первого добавлением текстового постфикса "_comp" #3
ivan37, что такое insert, и как потом записать что-то в этот файл?
ivan37
52 / 52 / 45
Регистрация: 11.05.2015
Сообщений: 127
27.11.2015, 21:15     Сформировать имя второго файла из имени первого добавлением текстового постфикса "_comp" #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Nastya15684, функция insert добавляет подстроку "_comp" перед ".txt", т.е. если ты ввела имя файла file.txt, то после выполнения insert получишь file_comp.txt.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
#include <fstream>
 
using namespace std;
 
int main()
{
    string filename;
    cin>>filename;                      // вводим имя файла
    ifstream in(filename);              // открываем файл на чтение
    size_t pos = filename.find(".txt"); // находим позицию подстроки .txt в filename
    filename.insert(pos,"_comp");       // вставляем подстроку в строку
    ofstream out(filename);             // открываем файл на запись
    while (!in.eof())                   // пока не конец файла
    {
        char c = in.get();              // считываем символ из первого файла
        out.put(c);                     // записываем его в другой
    }
    in.close();
    out.close();                        // закрываем оба файла
    return 0;
}
Nastya15684
0 / 0 / 0
Регистрация: 12.10.2015
Сообщений: 133
27.11.2015, 21:24  [ТС]     Сформировать имя второго файла из имени первого добавлением текстового постфикса "_comp" #5
ivan37, спасибо большое!!))
Yandex
Объявления
27.11.2015, 21:24     Сформировать имя второго файла из имени первого добавлением текстового постфикса "_comp"
Ответ Создать тему
Опции темы

Текущее время: 02:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru