25.04.2018, 15:23 [+3 UTC]
в нашей команде: 2 706 чел. | участники онлайн: 5 (рекорд: 21)

:: РЕГИСТРАЦИЯ

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.47 (16.04.2018)

Общие новости:
13.04.2018, 10:33

Форум:
23.04.2018, 20:08

Последний вопрос:
25.04.2018, 12:48

Последний ответ:
25.04.2018, 12:02

Последняя рассылка:
24.04.2018, 19:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

РАЗДЕЛ • С / С++

Создание программ на языках C и C++.

[администратор рассылки: Андрей Кузнецов aka Dr_Andrew (Старший модератор)]

Лучшие эксперты в этом разделе

Коцюрбенко Алексей aka Жерар
Статус: Мастер-Эксперт
Рейтинг: 243
solowey
Статус: 9-й класс
Рейтинг: 86
CradleA
Статус: Профессор
Рейтинг: 63

Перейти к консультации №:
 

Консультация онлайн # 189000
Раздел: • С / С++
Автор вопроса: Посетитель - 399158 (Посетитель)
Отправлена: 21.03.2016, 17:40
Поступило ответов: 1

Здравствуйте! Прошу помощи в следующем вопросе:
Мне нужно добавить букву в начало файла, вот я сделал функцию,но у меня пишет ошибку в этой строке:fout << c; можете объяснить, почему так и исправить?

void AddBegin(int n)//добавление буквы в начало файла
{
char c;
ifstream fout("artem55555p.txt", ios::app);
cout << "Введите символ в начало файла:";
cout << endl;
fout.seekg(0);
cin >> c;
fout << c;
fout.close();
}

Состояние: Консультация закрыта

Ответ # 273512 от Андрей Кузнецов aka Dr_Andrew (Старший модератор)

Здравствуйте, Посетитель - 399158!

Удобнее всего выполнить задачу с использованием объектов класса string и stringstream. Подробности в коде:

#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using namespace std;
//------------------------------------------------------------
void AddBegin() // добавление буквы в начало файла
{
    // Буфер для сохранения символов
    stringstream Content;
    
    // Открываем файл для чтения
    ifstream FileIn("artem55555p.txt", ios::in);
    
    // Сохраняем его содержимое в буфер
    Content << FileIn.rdbuf();
    FileIn.close();
    
    string sSymbol;
    cout << "Введите символ для записи в начало файла: ";
    cin >> sSymbol;
    
    // Сохраняем содержимое буфера в строковую переменную
    string sContent = Content.str();
    
    // Записываем символ, введённый с клавиатуры, в начало 
    // строки
    sContent = sSymbol + sContent;
    
    // Открываем файл на запись...
    ofstream FileOut("artem55555p.txt");
    // и заменяем его содержимое новым
    FileOut << sContent;
    FileOut.close();
}
//------------------------------------------------------------
int main()
{
    AddBegin();
    return 0;
}


Консультировал: Андрей Кузнецов aka Dr_Andrew (Старший модератор)
Дата отправки: 22.03.2016, 13:08

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 189000
Асмик Гаряка
Советник

ID: 230118

# 1

= общий = | 21.03.2016, 17:53 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Флаг ios::app означает, что добавление должно происходить в конец файла. Чтобы решить задачу, нужно создать новый файл, записать в него ваш символ, а потом содержимое старого файла.

Посетитель - 399158
Посетитель

ID: 399158

# 2

= общий = | 21.03.2016, 18:15 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Да. я так сделал и все получилось, просто хотел как-то через указатель, но не вышло)

 

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

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.15816 сек.

© 2001-2018, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.47 от 16.04.2018