Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 17.09.2019
Сообщений: 162
1

Class в Файл

08.06.2021, 13:31. Показов 422. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет) Нужна помощь)) как правильно записать создания и чтения файла в void.

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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#include <iostream>
#include <fstream>
#include <string>
 
using namespace std;
 
class Firma
{
private:
    string Name;           
    string Adres;         
    string Osoba;        
    int Telephon;         
public:
    Firma () 
    {
        Name = "";
        Adres = "";
        Osoba = "";
        Telephon = 0000000000;           
    }
 
    void dani(string n, string a, string o, int t) 
    {
        Name = n;
        Adres = a;
        Osoba = o;
        Telephon = t;
    }
        
    void display()
    {
        cout << "1 =  " << Name  << endl;
        cout << "2 =  " << Adres  << endl;
        cout << "3 =  " << Osoba  << endl;
        cout << "4 =  " << Telephon  << endl;
 
    }
};
 
int main () 
{   
    string path1 = "Firma12.txt";
    string n, a, o;
    int t;
    Firma dani;
        cout << "\nCelaya chast': "; cin >> n;
        cout << "Drobnaya chast': "; cin >> a;
        cout << "Drobnaya chast': "; cin >> o;
        cout << "Drobnaya chast': "; cin >> t;
 
 
 
    dani.dani(n, a, o, t);
 
//-------------------------------------------------------------------
    ofstream fout;
 
    fout.open(path1, ofstream::app);
    if (!fout.is_open())
    {
        cout << "Error"<< endl;
    }
    else
    {
        cout << "Open File" << endl;  
        fout.write((char*)&dani, sizeof(dani));
    }
    fout.close();
//-------------------------------------------------------------------
 
    ifstream fin;
    fin.open(path1);
    if (!fin.is_open())
    {
        cout << "Error"<< endl;
    }
    else
    {
        cout << "Open File" << endl; 
        Firma pnt;
        while (fin.read((char*)&pnt, sizeof(dani)))
        {
            pnt.display();
 
        }
        
    }
    fin.close();
//-------------------------------------------------------------------
 
 
    system("pause");
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.06.2021, 13:31
Ответы с готовыми решениями:

Разъясните код пжлст(выдает ошибку:cannot convert from 'class std::list<class c_bullet *,class std::allocator<class c_bullet *> >::iterator' to 'int')
Есть такие строки: std::list&lt;c_bullet*&gt; Bullets; ... for(auto i = Bullets.begin(); i !=...

Перевод переменной из class A в другой class B с последующим переходом в class C
Доброе время суток. Прошу помочь ввиду нехватка опыта и мозгов( Есть задачка. Посчитать...

Как декомпилировать .class файл обратно в .java файл?
Как декомпилировать .class файл обратно в .java файл?

bad class file: C:Program FilesJavajre1.5.0_02lib t.jar(java/lang/Object.class) class file has wrong version 49.0, should be 48.0
написал тестовый td_jsp.jsp фаил -&gt;&gt; &lt;html&gt; &lt;head&gt;&lt;title&gt;JSP test&lt;/title&gt;&lt;/head&gt; ...

2
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,712
08.06.2021, 14:12 2
Цитата Сообщение от effefe Посмотреть сообщение
string Name;
string - Это контейнерный класс. Данные он хранит во внешней динамической памяти.
Поэтому, при простом копирование класса на диск перепишутся только указатели на эту память.
Используйте либо текстовый режим и operator<<
либо в бинарном режиме пишите текстовое представление каждой строки через метод c_str()
C++
1
2
3
 fout.write(dani.Name.c_str(), dani.Name.size());
 fout.write(dani.Adres.c_str(), dani.Adres.size());
....
И открывайте файл в бинарном режиме:
C++
1
  fout.open(path1, ios::binary | ios::app);
p.s.
Цитата Сообщение от effefe Посмотреть сообщение
cout << "\nCelaya chast': "; cin >> n;
n - это у Вас это Имя. При чем тут "\nCelaya chast': "?
0
0 / 0 / 0
Регистрация: 17.09.2019
Сообщений: 162
08.06.2021, 15:18  [ТС] 3
Цитата Сообщение от zss
p.s.
n - это у Вас это Имя. При чем тут "\nCelaya chast': "?
Это я просто с другой проекта взял и забыл поменять))

Добавлено через 52 минуты
А как теперь получить данные из этого файла??
0
08.06.2021, 15:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.06.2021, 15:18
Помогаю со студенческими работами здесь

class и подключаемый файл
Задача стояла - создать подключаемый файл используя классы и соответственно подключить его к...

файл avplugin Class
Если кто знает подскажите какой программой открыть такой файл, когда открываю блокнотом на экране...

Не создается .class файл
Привет,решил создать сервлет,все настроил,томкат джк,но при попытке создать классс файл(методом...

Как перезаписать class файл
Как перезаписать class файл в jar архиве??? Идея такая : Программа соединяется с сервером и...

Как запустить файл *.class ?
Подскажите, пожалуйста, человеку далёкому от Java, как можно сграбить динамическую картинку,...

Не создается файл с расширением class
Данный файл переименуем в phone.jws и поместим в папку axis на Tomcat. Теперь Tomcat необходимо...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru