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

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

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

Не всё записывается в файл. Ничего не понимаю - C++

05.06.2016, 22:19. Просмотров 144. Ответов 2
Метки нет (Все метки)

Здравствуйте. У меня появилась такая проблема: нужно записать в один файл данные из двух функций. Казалось бы, что ничего сложного. Но вот что происходит у меня: если стоит запись в файл только в одной функции, то в файл всё нормально записывается. Как только я добавляю запись в файл во вторую функцию, то в файл записываются данные только из второй функции, но не из обеих. Подскажите, пожалуйста, как исправить.
Первая функция:
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
void InFile(COMPANIES * final,int CompNum)  //Вывод в файл
{
    ofstream outlink;
    outlink.open("C://Users//УЩ//Documents//Курсовая//ConsoleApplication1//outfile.txt", ios::trunc);
    if (outlink.fail()) {
        cout << "Файл не может быть найден.";
    }
    outlink 
        << "\t\t\t\t--------------------------\n"
        << "\t\t\t\t|Фирмы-производители СКБД|\n"
        << "\t\t\t\t--------------------------\n";
    outlink << "|" << setw(20) << left << "Название компании"
        << "|" << setw(20) << left << "Количество продуктов"
        << "|" << setw(20) << left << "Продажи за год"
        << "|" << setw(20) << left << "Часть рынка %";
    for (int i = 0; i < CompNum; i++) {
 
        outlink << "\n+--------------------+--------------------+--------------------+--------------------+\n"
            << "|" << setw(20) << left << final[i].NAME
            << "|" << setw(20) << left << final[i].PRODUCTNUMBER
            << "|" << setw(20) << left << final[i].YEARSALESVOLUME
            << "|" << setw(20) << left << final[i].MARKETPERCENT;
    }
    outlink <<"\n+--------------------+--------------------+--------------------+--------------------+\n";
    outlink.close();
}
Вторая функция:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Выше идет обычная сортировка
ofstream outlink2;
    outlink2.open("C://Users//УЩ//Documents//Курсовая//ConsoleApplication1//outfile.txt");
    if (outlink2.fail()) {
        cout << "Файл не может быть найден.";
    }
    outlink2 << "Отсортированная таблица: ";
    outlink2 << "\n+--------------------+--------------------+--------------------+--------------------+\n"
        << "|" << setw(20) << left << "Название компании"
        << "|" << setw(20) << left << "Количество продуктов"
        << "|" << setw(20) << left << "Продажи за год"
        << "|" << setw(20) << left << "Часть рынка %" << "|";
    for (int i = 0; i < CompNum; i++) {
 
        outlink2 << "\n+--------------------+--------------------+--------------------+--------------------+\n"
            << "|" << setw(20) << left << final[i].NAME
            << "|" << setw(20) << left << final[i].PRODUCTNUMBER
            << "|" << setw(20) << left << final[i].YEARSALESVOLUME
            << "|" << setw(20) << left << final[i].MARKETPERCENT << "|";
    }
    outlink2 << "\n+--------------------+--------------------+--------------------+--------------------+\n";
    outlink2.close();
Добавлено через 48 минут
Может, программа просто перезаписывает данные? Есть какая-то функция, которая запрещает перезапись?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2016, 22:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не всё записывается в файл. Ничего не понимаю (C++):

Не могу понять почему в файл OUTPUT.TXT ничего не записывается - C++
#include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int main() { int n,i; ifstream in(&quot;INPUT.TXT&quot;); in &gt;&gt;...

Почему я ничего не понимаю в C++? - C++
Я пол года изучаю этот язык и ничего не понимаю, выезжаю за счёт вопросов на киберфоруме, вот допустим я вчера что-то учил, а сегодня(!)...

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

Слишком сложный код программы, ничего не понимаю( - C++
Я искал код по этому заданию: &quot;Имеется картографическая информация, представляющая собой серии пар целых чисел. Диапазон величин этих...

Хочу разбить код на функции, но ничего в них не понимаю - C++
Задача: написать ввод и вывод в отдельных функциях. #include &lt;iostream&gt; using namespace std; int main() { int a; ...

Ничего не понимаю в языках программирования но хочу создать свою программу. - C++
Помогите плз!:scratch:

2
stzer
96 / 72 / 21
Регистрация: 26.10.2013
Сообщений: 228
Завершенные тесты: 2
05.06.2016, 22:39 #2
DenKG, попробуйте открыть файл в режиме "добавления" с помощью std::ios_base::app.
C++
1
outlink2.open("C://Users//УЩ//Documents//Курсовая//ConsoleApplication1//outfile.txt", std::ios_base::app);
0
DenKG
0 / 0 / 0
Регистрация: 23.12.2015
Сообщений: 418
05.06.2016, 23:00  [ТС] #3
Цитата Сообщение от stzer Посмотреть сообщение
DenKG, попробуйте открыть файл в режиме "добавления" с помощью std::ios_base::app.
Спасибо большое, помогло
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2016, 23:00
Привет! Вот еще темы с ответами:

Выручайте! Нужно переделать прогу под двусвязный список.ничего не понимаю) - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; struct Node { int memSize; Node *Next; }; Node *BegList; using namespace...

Записывается мусор в файл - C++
Здравствуйте, есть следующий код для вывода дефолтных значений в файл: #include &lt;iostream&gt; #include &lt;fstream&gt; using namespace...

В файл записывается мусор - C++
Добрый вечер! Почему при записи в бинарный файл, в файл записывается мусор и соответственно читается из него тоже мусор? #define...

Не записывается строка в файл - C++
Не записывается строка в файл в чем может быть причина ? fstream f(&quot;work_mem.txt&quot;, ios::in | ios::out);// ...


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

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

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