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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти заданные книги в файле http://www.cyberforum.ru/cpp-beginners/thread1755512.html
Дан файл f, содержащий сведения о книгах. Сведения о каждой из книг - это фамилия автора, название и год издания. 1) Найти названия книг данного автора, изданных с 1960 г. 2) Определить, имеется ли книга с названием "Информатика". Если да, то сообщить фамилию автора и год издания. Если таких книг несколько, то сообщить имеющиеся сведения обо всех книгах.
C++ Двумерный массив в бинарном файле Здравствуйте, прошу помощи, ибо не знаю, где таится ошибка в функции: Функция считывает матрицы из бинарного файла и для каждого находит сумму элементов, если сумма четная - он записывает ее в другой файл. Сама функция записи работает, если самому заносить данные матриц, он записывает великолепно, а когда через условие он пишет белиберду. void func() { int mass; ifstream... http://www.cyberforum.ru/cpp-beginners/thread1755511.html
C++ Программа анализа строк по словарю
Помогите доделать программу типа частотный словарь, я в строках не очень разбираюсь. Хочу получить на выходе массив строк с параметрами. Получилось так, но ошибки в присвоениие типов #include <iostream> #include <fstream> #include <cstring> using namespace std; char sorting_(char *sorting, int i) {
Поиск объекта в классе по строке типа char C++
Есть такая задача : Описать класс с именем PRICE, содержащий следующие поля: - название товара; - название магазина, в котором продается товар; - стоимость товара. Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми объектов типа PRICE; - вывод на экран информации о товарах, продающихся в магазине, название которого введено с...
C++ Переписать символы из входной строки в выходную, заменяя операторы языка Си на операторы языка Паскаль http://www.cyberforum.ru/cpp-beginners/thread1755496.html
Переписать символы из входной строки в выходную, заменяя операторы языка Си на операторы языка Паскаль: = на :=, == на =, != на #.
C++ Вычисление определенного интеграла методом модифицированного прямоугольника с визуализацией решения Всем доброго времени суток.Задали курсовую на тему которая в заголовке.Но код отказывается работать.Выдает ошибку.Как решить ума не приложу.Может знает кто как ее решить?# include <iostream> # include <conio.h> # include <stdio.h> # include <process.h> # include <string.h> подробнее

Показать сообщение отдельно
DenKG
0 / 0 / 0
Регистрация: 23.12.2015
Сообщений: 138
05.06.2016, 22:19     Не всё записывается в файл. Ничего не понимаю
Здравствуйте. У меня появилась такая проблема: нужно записать в один файл данные из двух функций. Казалось бы, что ничего сложного. Но вот что происходит у меня: если стоит запись в файл только в одной функции, то в файл всё нормально записывается. Как только я добавляю запись в файл во вторую функцию, то в файл записываются данные только из второй функции, но не из обеих. Подскажите, пожалуйста, как исправить.
Первая функция:
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 минут
Может, программа просто перезаписывает данные? Есть какая-то функция, которая запрещает перезапись?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru