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

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

Войти
Регистрация
Восстановить пароль
 
Suares
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 106
#1

Запись в файл - C++

05.02.2014, 18:19. Просмотров 236. Ответов 3
Метки нет (Все метки)

Ребята, когда я записываю в файл текст с помощью этого кода, то в файле получается первая строка пустая и только потом идет текст. Где у меня записывается эта пустая строка я не вижу

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <fstream>
#include <iostream>
#include <string>
#include <stdexcept>
 
std::string fileName;
 
int main()
{
    std::string str;
    std::fstream file;
 
    std::cout << "Enter file name: ";
    std::cin >> fileName;
    file.open(fileName.c_str(), std::fstream::out);
    if(!file)
    {
        throw std::runtime_error("Can`t open file " + str);
    }
 
    std::cout << "Enter text:" << std::endl;
    char ch;
    while ((ch = std::cin.get()) != EOF) 
        file.put(ch);
 
    file.clear();
    file.seekg(0);
    file.close();
    std::cin.clear();
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2014, 18:19     Запись в файл
Посмотрите здесь:

C++ запись в файл
C++ Запись в файл
запись в файл C++
Запись в файл C++
Запись в файл C++
C++ Запись в файл
C++ Запись в файл
C++ Запись в файл
Запись в файл C++
Запись в файл C++
C++ Запись в файл
C++ Запись в файл

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NoMasters
Псевдослучайный
1744 / 1087 / 71
Регистрация: 13.09.2011
Сообщений: 3,111
05.02.2014, 18:22     Запись в файл #2
После
C++
1
std::cin >> fileName;
в буфере ввода остаётся перенос строки.
Suares
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 106
05.02.2014, 18:35  [ТС]     Запись в файл #3
Цитата Сообщение от NoMasters Посмотреть сообщение
в буфере ввода остаётся перенос строки.
написал
C++
1
2
std::cin >> fileName;
std::cin.clear();
Всё равно в файле первая строка пустая.
Aloir
216 / 216 / 13
Регистрация: 17.12.2010
Сообщений: 689
05.02.2014, 18:36     Запись в файл #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
вместо clear()
C++
1
    cin.sync();
Yandex
Объявления
05.02.2014, 18:36     Запись в файл
Ответ Создать тему
Опции темы

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