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

Реализовать класс для записи из строки в файл, и чтения из внешнего файла

31.03.2016, 22:50. Показов 444. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста разобраться с классом.
Необходимо реализовать и запись из строки в файл, и чтение из внешнего файла.
В моем случае получается реализовать одно из двух, но второе не срабатывает.
Вот что у меня пока получилось:
main.cpp
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
#include <iostream>
#include <conio.h>
#include <fstream>
#include "Text.h"
 
using namespace std;
 
int main(int argc, char** argv) {
    
    ofstream fout;
    ifstream fin;
    fout.open("Output.txt");    
    fin.open("Input.txt");
    
    Text t;
    char stroka1[50];
    char* stroka2;
    
    cin>>stroka1;
    t.SetText(stroka1);
    stroka2=t.GetText();
    cout << stroka2<< endl;
    
    t.PrintTextToFile(fout);
    
    
 
    fout.close();
    fin.close();
    getch();
    return 0;
}



Text.h
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
#include <iostream>
#include <cstring>
#include <string>
#include <fstream>
 
class Text
{
private:
    char* str;
    unsigned int lenght;
public:
    Text();
    Text(const char*);
    Text(const Text&);
    
    void  SetText(const char*);
    char* GetText() const;
 
    void SetTextFromFile(std::ifstream&);
    void PrintTextToFile(std::ofstream&) const;
        
    Text& operator=(const Text&);
        
    ~Text();    
};
Text.cpp
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
#include "Text.h"
 
Text::Text()
{
    str = NULL;
    lenght = 0;
}
 
Text::Text(const char* s)
{
    lenght = strlen(s);
    str = new char [lenght+1];
    for(unsigned int i(0); i < lenght; i++)
        str[i] = s[i];
    str[lenght] = '\0'; 
}
 
Text::Text(const Text& t)
{
    lenght = strlen(t.str);
    str = new char [lenght+1];
    for(unsigned int i=0; i < lenght; i++)
        str[i] = t.str[i];
    str[lenght] = '\0'; 
}
 
void Text::SetText(const char* s)
{
    delete[] str;
    lenght = strlen(s);
    str = new char [lenght+1];
    for(unsigned int i=0; i < lenght; i++)
        str[i] = s[i];
    str[lenght] = '\0'; 
}
 
char* Text::GetText() const
{
    char* s;
    int n;
    n = strlen(str);
    s = new char [n+1];
    for(unsigned int i=0; i < n; i++)
        s[i] = str[i];
    s[lenght] = '\0';
    return str;
}
 
void Text::SetTextFromFile(std::ifstream& fin)
{
    if(fin.eof())
    {
        std::cout << "File empty (or end of file)!\n";
        return;
    }
    delete[] str;
    std::string file_str;
    getline(fin, file_str);
    lenght = file_str.size();
    str = new char [lenght+1];
    for(unsigned int i(0); i < lenght; i++)
        str[i] = (char)file_str[i];
    str[lenght] = '\0'; 
}
 
void Text::PrintTextToFile(std::ofstream& fout) const
{
    fout << str;
}
 
Text& Text::operator=(const Text& t)
{
    delete[] str;
    lenght = strlen(t.str);
    str = new char [lenght+1];
    for(unsigned int i(0); i < lenght; i++)
        str[i] = t.str[i];
    str[lenght] = '\0'; 
    return *this;
}
 
Text::~Text()
{
    delete[] str;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.03.2016, 22:50
Ответы с готовыми решениями:

Класс для чтения из файла, записи в файл
Появился вопрос по с++. Создал класс, который может читать и записывать в файл. деструктор класс ...

Класс для записи в файл и чтения из файла
Здравствуйте, у меня вот возникла такая проблема при выполнении домашнего задания: надо создать два...

Реализовать структуру User и написать функции записи в бинарный файл и чтения из бинарного файла
Нужно создать двоичный файл структур. Выдает кучу ошибок, помогите исправить, пожалуйста #include...

В программе реализовать возможность записи объектов в файл и чтения объектов из файла
Добрый день, помогите, пожалуйста! У меня есть программа: #include &lt;iostream&gt; #include...

0
31.03.2016, 22:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.03.2016, 22:50
Помогаю со студенческими работами здесь

Создание файла для записи и чтения, запись в файл данных
Написать простейшую программу, которая для своей работы использует системные вызовы...

Драйвер для чтения из файла и записи в файл последних 20 слов
Нужно скопировать последние 20 слов с одного текстового файла в другой За основание берем две...

Класс записи/чтения матрицы в файл
Учу по немного С++, попробовал реализовать класс записи/чтения матрицы в файл struct IFile { ...

Реализовать функции записи и чтения дерева из файл
определить функции в соответствии с вариантом задания; в функции main() реализовать демонстрацию...

Bat - файл для чтения только одной строки из файла CSV
Добрый день! Подскажите пожалуйста как сделать батник чтобы он выводил только одну (2, 3, 4,...)...

Класс-контейнер с возможностью записи и чтения в бинарный файл. Не работает
Задание: Добавить к классу-контейнеру возможность записи и чтения данных в бинарный файл,...


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

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