Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.10.2013, 21:32   #1
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию запись в файл

Подскажите пожалуста как объект abbonent записать в файл


Код:
#include "stdafx.h"
#include"Name.h"
#include"phone_book.h"
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "rus");
    Name abbonent; 
    abbonent.myInput();
    
    system("pause");
    return 0;
}
с++
mixon-21 вне форума Ответить с цитированием
Старый 01.10.2013, 21:34   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А что он из себя представляет? Я думаю 99% что придется сериализировать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.10.2013, 21:36   #3
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

Name.ccp


Код:
#include "stdafx.h"
#include "Name.h"


Name::Name()
{
}


Name::~Name()
{
}

void Name::myInput()
{
    
    
    cout << "Введите имя: ";
    cin >> abonent.name;
    cout << "\nВведите фамилию: ";
    cin >> abonent.surname;
    cout << "\nВведите возраст: ";
    cin >> abonent.age;
    cout << "\nВведите пол: ";
    cin >> abonent.sex;
    }
mixon-21 вне форума Ответить с цитированием
Старый 01.10.2013, 21:49   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну так а класс где?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.10.2013, 21:51   #5
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

Name.h



Код:
#pragma once

struct myName
{
    string name;
    string surname;
    int age;
    bool sex;
};
class Name
{
public:
    Name();
    ~Name();
    void myInput();
   
protected:
    myName abonent;
};
mixon-21 вне форума Ответить с цитированием
Старый 01.10.2013, 21:59   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Да. Придется сериализацию делать.
Опищи метод типа:
Код:
void Name::Serialize(FILE* f){
 for(int i=0;i<myName.name.GetLength();i++) fputc(myName[i].name,f);
 for(int i=0;i<myName.surname.GetLength();i++) fputc(myName[i].surname,f);
 fwrite(&myName.age,sizeof(myName.age),1,f);
 fwrite(&myName.sex,sizeof(myName.sex),1,f);
}
И в него передавай переменку открытого на запись файла.
Это как совет, не более.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.10.2013, 22:03   #7
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

как создать файл сначала???

а еще варианты есть плиз

Последний раз редактировалось Stilet; 02.10.2013 в 09:41.
mixon-21 вне форума Ответить с цитированием
Старый 02.10.2013, 09:42   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
как создать файл сначала???
Ну дык в моем примере FILE* f= fopen(имя файла,"wb"); если не ошибаюсь.
Цитата:
а еще варианты есть плиз
Если и есть то мне о них ничего не известно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.10.2013, 12:06   #9
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

МБ стоит засунуть размеры строк перед фамилией и именем? - иначе один лишний пробел сломает весь файл )
Цитата:
как создать файл сначала???
книжку то открой уже.
rrrFer вне форума Ответить с цитированием
Старый 02.10.2013, 12:35   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
МБ стоит засунуть размеры строк перед фамилией и именем?
Эге. Это я не подумал чет
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись информации в файл в файл Anubys Win Api 0 04.11.2011 23:27
Запись в файл skovorodkun Помощь студентам 2 23.06.2011 08:53
запись в файл Артэс Общие вопросы C/C++ 12 24.11.2009 01:32
Запись в файл В_И_К_Т_О_Р Помощь студентам 9 30.01.2008 22:46