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

Ошибка при открытые файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Биты и байты в алгоритме Хаффмана http://www.cyberforum.ru/cpp-beginners/thread1040653.html
Пишу программу на С, в которой нужно реализовать метод кодирования Хаффмана. Код не буду прикладывать, так как в нём в принципе для меня всё понятно. В общем читаю я из текстового файла информацию, проходит этап кодировки, хоть и дерево неправильно строится, но меня этот вопрос пока не волнует. Меня вот что волнует: записываю я код из 0 и 1 в бинарный файл, но в нем 0 и 1 почему-то считаются как...
C++ Неправильно считается количество пробелов в string string newName; again: try{ int space_count=0; cout<<"Введите новые ФИО клиента:"; cin>>newName; for(int i=0;i<newName.length();i++) if(newName=' ') space_count++; if (space_count!=2) throw wrongSringExceptionObj; } catch(wrongStringException){goto again;}; Не ругайтесь и не обращайте внимания на goto, проблема не в нем, а в подсчете пробелов. Каждый символ строки считается за... http://www.cyberforum.ru/cpp-beginners/thread1040649.html
РСН C++
Что такое РСН и как его отключить в visual studio 2010 express
Переписать код с функцией C++
Как записать эту задачу с помощью функций? Условие: Проверить, есть ли в матрице хотя бы одна строка, содержащая положительный элемент, и найти ее номер. #include <stdio.h> #include <math.h> #include <locale.h> #include <stdlib.h> int main(){ setlocale(LC_ALL,"rus");
C++ поменять местами максимальный элемент и первый, используя одномерный массив на c++ http://www.cyberforum.ru/cpp-beginners/thread1040613.html
Здравствуйте, искал на форуме нашел частичные данные, которые не могу даже нормально соединить, помогите "поменять местами максимальный элемент и первый, используя одномерный массив на c++", заранее благодарен
C++ Бинарные файлы данных Доброго времени суток, господа) извольте помочь мне с кодом):senor: Задание: Есть бинарный файл Ф1 с целыми числами:10 отрицательных и 10 больше 0. Создать файл Ф2 в котором будет 5 отрицательных, 5 положительных чисел с файла Ф1. Числа в файле Ф1 разположены хаотично! #include <iostream> #include <ctime> #include <cstdlib> #include <stdio.h> using namespace std; подробнее

Показать сообщение отдельно
o33ik
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228
15.12.2013, 00:42  [ТС]     Ошибка при открытые файла
alsav22, вот это я сделал перегрузку вывода в файл по примеру, что вы написали.
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
    friend std::ostream& operator<<(std::ostream& out, const Parts& a) 
    {        
        out << a.Name;
        out << a.Description;
        out << a.Type;
        out << a.cost;
        out << a.Amount;
        out << std::endl;
        return out;
    }


А как тогда считывание из файла сделать?

Добавлено через 2 минуты
вот так?
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
    friend std::istream& operator>>(std::istream& in, Parts& a)
    {
        in >> a.Name;
        in >> a.Description;
        in >> a.Type;
        in >> a.cost;
        in >> a.Amount;
        in.ignore(1);
        return in;
    }


Добавлено через 54 секунды
если у меня первые 3 поля - string, а остальные 2 - int?

Добавлено через 34 минуты
вроде чуть понял, но всеравно много вопросов. Parts содержит у меня 3 стринга(строки могут быть с пробелами) и два инта. Надо записывать контейнер таких обьектов в файл, и считивать обратно. Как писать в файл както более понятно(поля одного обьекта можно разделять "\n", разные обьекты наверное двома "\n"). Только как заставить тогра програму счытивать одну строчку в одне поле, вторую - в второе поле..., а потом переходить к счытиванию второго обьекта?
И как должен выгледить сам процес чтения(запись более менее понятно)? Такая зацикливаеться:
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
    void openPartsFromFile()
    {
        std::ifstream fin("PARTS.DAT");
        Parts temp;
        while(!fin.eof())
        {
            fin >> temp;
            parts_list.push_back(temp);
            temp.show();
        }
        fin.close();
    }
 
Текущее время: 12:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru