С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 270
#1

Запись в текстовый файл - C++

12.06.2014, 21:27. Просмотров 1819. Ответов 6
Метки нет (Все метки)

Здраствуйте.
Нашёл небольшой кусочек кода в интеренете, который записывает текст в текстовый файл. Он работает.
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(0,""); // включаем кириллицу в консоли
    char * fileName = "C:\\example.txt"; // Путь к файлу для записи
    FILE * file = fopen(fileName, "w");
    if (file) // если есть доступ к файлу,
    {
        char * str = "I Like The Coding!"; // инициализируем строку
        bool result = fputs(str, file); // и записываем ее в файл
        if (!result) // если запись произошла успешно
            cout << "Строка в файл успешно записана!" << endl; // выводим сообщение
    }
    else
    cout << "Нет доступа к файлу!" << endl;
    fclose(file);
    return 0;
}
Но мне нужно, чтобы текст вводился в консоле, а затем поподай в файл, а не был уже готовым как тут
C++
1
char * str = "I Like The Coding!"; // инициализируем строку
Не подскажите, как изменить программу.
Сам тоже пытался, ничего путного не вышло.

Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2014, 21:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запись в текстовый файл (C++):

Запись в текстовый файл - C++
Создать текстовый файл и записать в него 6 строк. Записываемые строки вводятся с клавиатуры. Надо решить эту задачу в КЛАССАХ. ...

До запись в текстовый файл - C++
Программа работает, но с дефектом. Суть такова: программа должна дописывать в конец текстового файла данные о сканерах. Но он как бы...

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

Запись структуры в текстовый файл - C++
Необходимо в текстовый фаил вывести данные. Фаил создается, но как бы я не пробовал, в него ничего не записывается. В строках 94-100...

Запись значений в текстовый файл - C++
Здравствуйте, у меня вот такой вопрос. Можно ли записать, например, значение какой-нибудь переменной в текстовый файл. И чтобы при...

Чтение и запись из/в текстовый файл - C++
Здравствуйте, программисты! Помогите, пожалуйста, разобраться с чтением из файла. Есть код: #include &lt;cstdlib&gt; #include &lt;stdio.h&gt; ...

6
_script_
170 / 138 / 34
Регистрация: 01.05.2012
Сообщений: 414
12.06.2014, 21:33 #2
Leonman,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <stdio.h>
using namespace std;
 
int main()
{
    setlocale(0,""); // включаем кириллицу в консоли
    char * fileName = "example.txt"; // Путь к файлу для записи
    FILE * file = fopen(fileName, "w");
    if (file) // если есть доступ к файлу,
    {
        char * str = new char[100]; // инициализируем строку
        gets(str);
        bool result = fputs(str, file); // и записываем ее в файл
        if (!result) // если запись произошла успешно
            cout << "Строка в файл успешно записана!" << endl; // выводим сообщение
    }
    else
    cout << "Нет доступа к файлу!" << endl;
    fclose(file);
    return 0;
}
1
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 270
12.06.2014, 22:20  [ТС] #3
_script_, Спасибо. Так всё просто окозалось)

Добавлено через 29 минут
_script_, Непожскажите ещё как записывать текст в текстовый файл используя fstream, чтоб она тоже вводился с консоли?
0
_script_
170 / 138 / 34
Регистрация: 01.05.2012
Сообщений: 414
12.06.2014, 22:22 #4
Цитата Сообщение от Leonman Посмотреть сообщение
Непожскажите ещё как записывать текст в текстовый файл используя fstream, чтоб она тоже вводился с консоли?
вводить так же) только вывод так:
C++
1
2
3
ofstream fout;
fout.open("file.txt");
fout<< str;
0
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 270
12.06.2014, 22:30  [ТС] #5
_script_, Вот мой код:
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include <iostream>
#include <fstream>
#include <conio.h>
#include <windows.h>
#include <vector>
#include <string>
 
using namespace std;
 
void check(double x, double y)
{
    if (x < 0)
    {
        cout << "Value can not be less than 0!" << endl;
        cout << "Type your value again: " << endl;
        cin >> y;
    }
}
 
int main()
{
    double br, stax, netto, perc, discount, oneperc, net_with_dis, forpay, with_stax, without_stax;
    vector <double> value;
    vector <string> points;
 
    cout << "Please, enter brutto price: " << endl;
    cin >> br;
    check(br, br);
 
    cout << "Now enter interest/percentage: " << endl;
    cin >> perc;
    check(perc, perc);
 
    cout << "Enter sales tax: " << endl;
    cin >> stax;
    check(stax, stax);
 
    system("cls");
 
    netto = br / stax;
    value.push_back(netto);
    points.push_back("The netto price is: ");
 
    oneperc = netto / 100;
    value.push_back(oneperc);
    points.push_back("1 percentage of netto price is: ");
 
    discount = oneperc * perc;
    value.push_back(discount);
    points.push_back("The discount is: ");
 
    net_with_dis = netto - discount;
    value.push_back(net_with_dis);
    points.push_back("Netto with discount is: ");
 
    forpay = net_with_dis * stax;
    value.push_back(forpay);
    points.push_back("Price for pay is: ");
 
    without_stax = forpay/stax;
    value.push_back(without_stax);
    points.push_back("Price without salas tax is: ");
 
    with_stax = forpay - net_with_dis;
    value.push_back(with_stax);
    points.push_back("Price with salas tax is: ");
 
    cout << "Please enter name and adress of firm: " << endl;
    ofstream f("Invoice.doc");
    char * str = new char[55];
    gets(str);
    f << str;
 
    for (int i = 0; i < points.size(); i++)
        f << points[i] << value[i] << endl;
    
    cout << "Now check file witch was created" << endl;
 
    return 0;
}
Он игнорирует
C++
1
gets(str);
и просто заканчивает программу, не дав возможности ввесли этот str.
0
_script_
170 / 138 / 34
Регистрация: 01.05.2012
Сообщений: 414
12.06.2014, 22:33 #6
Leonman, вызови перед вводом
C++
1
cin.get();
0
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 270
12.06.2014, 22:35  [ТС] #7
_script_, Спасибо
0
12.06.2014, 22:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.06.2014, 22:35
Привет! Вот еще темы с ответами:

Запись в созданный текстовый файл - C++
Добрый вечер,создаю файл,туда нужно ввести данные с консоли слова пишит ,а знаки припинания там символы нет,где ошибка?{string s5,s6,s; ...

Неправильная запись в текстовый файл - C++
При записи в файл вместе с данными (логином и паролем), которые я ввожу, записываются непонятный мусор (лишние буквы МММ). Скажите...

Запись данных в текстовый файл - C++
Помогите решить задачу. Нужно создать что-то типа базы данных с записью в текстовый документ. Нужно вводить из клавиатуры марку машины и...

Запись структуры в текстовый файл - C++
в программе написан код для записи данных в бинарный файл. как его переделать, чтобы записывало в текстовый? просто сменить .bin на .txt не...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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