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

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

Восстановить пароль Регистрация
 
Suares
0 / 0 / 0
Регистрация: 28.02.2013
Сообщений: 106
05.02.2014, 18:19     Запись в файл #1
Ребята, когда я записываю в файл текст с помощью этого кода, то в файле получается первая строка пустая и только потом идет текст. Где у меня записывается эта пустая строка я не вижу

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++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NoMasters
Псевдослучайный
1737 / 1080 / 69
Регистрация: 13.09.2011
Сообщений: 3,093
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
 Аватар для Aloir
216 / 216 / 13
Регистрация: 17.12.2010
Сообщений: 688
05.02.2014, 18:36     Запись в файл #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
вместо clear()
C++
1
    cin.sync();
Yandex
Объявления
05.02.2014, 18:36     Запись в файл
Ответ Создать тему
Опции темы

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