Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
1

Создание файла для записи и чтения, запись в файл данных

29.02.2012, 18:06. Просмотров 3716. Ответов 7
Метки нет (Все метки)

Написать простейшую программу, которая для своей работы использует
системные вызовы функций и предоставляет следующие возможности:
− создание файла для записи и чтения, а также его удаление;
− запись в файл следующих данных: int, byte, short, long, float, double, char,
char[] (в файле должно быть не менее трёх строк), а затем считывание их и
вывод на экран.

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
#include <iostream>
#include <stdio.h>
using namespace std;
 
    int a1,a11;
    long int a2,a22;
    short int a3,a33;
    float a4,a44;
    double a5,a55;
    char a6,a66;
    char a7[10],a77[10];
 
void Vvod();
void ZapFail(FILE *f2);
void ChitFail(FILE *f2);
 
void main()
{
    Vvod();
 
    FILE *f2;
    f2=fopen("str2.txt","w");
    ZapFail(f2);
    ChitFail(f2);
} 
 
void Vvod()
{
    cout<<"Vvedite <int> : ";
    cin>>a1;
    cout<<"Vvedite <long> : ";
    cin>>a2;
    cout<<"Vvedite <short> : ";
    cin>>a3;
    cout<<"Vvedite <float>";
    cin>>a4;
    cout<<"Vvedite <double>";
    cin>>a5;
    cout<<"Vvedite <char>";
    cin>>a6;
    cout<<"Vvedite <char[10]>";
    cin>>a7[10];
}
 
void ZapFail(FILE *f2)
{
    fprintf(f2,"%d\n",a1);
    fprintf(f2,"%ld\n",a2);
    fprintf(f2,"%hd\n",a3);
    fprintf(f2,"%.3f\n",a4);
    fprintf(f2,"%.3lf\n",a5);
    fprintf(f2,"%c\n",a6);
    fprintf(f2,"%s\n",a7);
}
 
void ChitFail(FILE *f2)
{
        fscanf(f2,"%i",a11);
        cout<<"\n"<<a11<<"\n";
}
Помогите, плиз...
fprintf(f2,"%s\n",a7) не записывает в файл строку ее там не видно.
Подскажите как орнанизовать вывод данных обратно, я попробовал первый инт вывести, 0 выводит, а не число...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.02.2012, 18:06
Ответы с готовыми решениями:

Напишите функции записи данных в файл, чтения данных из файла
Файл dаte.in содержит четырех значное число на каждой строке. Напишите функции записи данных в...

Чтение текстового файла. Парсинг его данных. Создание исключений для данных. Запись свойств объектов в файл
Проблема такая. Есть файл data.txt. В нем например какие-то данные. Landon Donovan, 150, A...

Разработать и добавить функции записи исходных данных в файл и чтения их из файла
Здраствуйте всем. Как хорошо что сайт заработал.) Ребята помогите с бинарными файлами 2 дня уже...

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

7
Эксперт С++
8353 / 6100 / 610
Регистрация: 10.12.2010
Сообщений: 28,356
Записей в блоге: 29
29.02.2012, 18:31 2
Пробуй

C++
1
2
3
4
fprintf(f2,"%s\n",&a7);
 
fscanf(f2,"%i",&a11);
fscanf(f2,"%i",a7);
1
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
29.02.2012, 19:19  [ТС] 3
Записывает 1 символ со всего массива, а вывод се равно - 0..
0
Эксперт С++
8353 / 6100 / 610
Регистрация: 10.12.2010
Сообщений: 28,356
Записей в блоге: 29
29.02.2012, 19:59 4
C++
1
cin>>a7[10];
это и есть запись одного символа т.е 10-го символа массива a7
1
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
29.02.2012, 20:01  [ТС] 5
Да, спасибо, тупанул.
А не подскажите как их теперь последовательно считать в переменные своих типов, я все перепробовал...
0
Эксперт С++
8353 / 6100 / 610
Регистрация: 10.12.2010
Сообщений: 28,356
Записей в блоге: 29
29.02.2012, 20:06 6
А еще у тебя файл открыт только для записи f2=fopen("str2.txt","w");
Нужно после записи закрыть файл fclose(f2); и сного открыть для чтения.


C++
1
cin.getline(a7,255);
1
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
29.02.2012, 20:36  [ТС] 7
аааааа....
туплю.....

Добавлено через 7 минут
Открыл для чтения и записи, все равно не считывает даже первый элемент int...(((

Добавлено через 21 минуту
Говорю спасибо на все сообщения!!!
Вот что получилось)))
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
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
using namespace std;
 
    int a1,a11;
    long int a2,a22;
    short int a3,a33;
    float a4,a44;
    double a5,a55;
    char a6,a66;
    char a7[5],a77[5];
 
void Vvod();
void ZapFail(FILE *f2);
void ChitFail(FILE *f2);
 
void main()
{
    Vvod();
 
    FILE *f2;
    f2=fopen("str2.txt","w");
    ZapFail(f2);
    fclose(f2);
    f2=fopen("str2.txt","r");
    ChitFail(f2);
} 
 
void Vvod()
{
    cout<<"Vvedite <int> : ";
    cin>>a1;
    cout<<"Vvedite <long> : ";
    cin>>a2;
    cout<<"Vvedite <short> : ";
    cin>>a3;
    cout<<"Vvedite <float> : ";
    cin>>a4;
    cout<<"Vvedite <double> : ";
    cin>>a5;
    cout<<"Vvedite <char> : ";
    cin>>a6;
    cout<<"Vvedite <char[5]> : ";
    for (int i=0;i<5;i++)
        cin>>a7[i];
}
 
void ZapFail(FILE *f2)
{
    fprintf(f2,"%d\n",a1);
    fprintf(f2,"%ld\n",a2);
    fprintf(f2,"%hd\n",a3);
    fprintf(f2,"%.3f\n",a4);
    fprintf(f2,"%.3lf\n",a5);
    fprintf(f2,"%c\n",a6);
    fprintf(f2,"%s",a7);
}
 
void ChitFail(FILE *f2)
{
        fscanf(f2,"%i",&a11);
        cout<<"\n"<<a11;
        fscanf(f2,"%i",&a22);
        cout<<"\n"<<a22;
        fscanf(f2,"%i",&a33);
        cout<<"\n"<<a33;
        fscanf(f2,"%f",&a44);
        cout<<"\n"<<a44;
        fscanf(f2,"%lf",&a55);
        cout<<"\n"<<a55;
        fscanf(f2,"%s",&a66);
        cout<<"\n"<<a66<<"\n";
        fscanf(f2,"%s",&a77);
        for (int i=0;i<strlen(a77);i++)
            cout<<a77[i];
        cout<<"\n";
}
0
Эксперт С++
8353 / 6100 / 610
Регистрация: 10.12.2010
Сообщений: 28,356
Записей в блоге: 29
01.03.2012, 12:25 8
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
#include <iostream>
#include <stdio.h>
       int a1,a11;
        long int a2,a22;
        short int a3,a33;
        float a4,a44;
        double a5,a55;
        char a6,a66;
        char a7[10],a77[10];
//---------------------------------------------------------------------------
void Vvod()
{
        cout<<"Vvedite <int> : ";
        cin>>a1;
        сout<<"Vvedite <long> : ";
        cin>>a2;
        cout<<"Vvedite <short> : ";
        cin>>a3;
        cout<<"Vvedite <float>";
        cin>>a4;
        cout<<"Vvedite <double>";
        cin>>a5;
        cout<<"Vvedite <char>";
        cin>>a6;
        cout<<"Vvedite <char[10]>";
        cin>>a7;
}
//---------------------------------------------------------------------------
void ZapFail(FILE *f2)
{
  fprintf(f2,"%d \n",a1);
  fprintf(f2,"%ld \n",a2);
  fprintf(f2,"%hd \n",a3);
  fprintf(f2,"%.3f \n",a4);
  fprintf(f2,"%.3lf \n",a5);
  fprintf(f2,"%c \n",a6);
  fprintf(f2,"%s \n", &a7);
}
//---------------------------------------------------------------------------
void ChitFail(FILE *f2)
{
  fscanf(f2,"%i",&a11);
  cout<<"\n"<<a11;
  fscanf(f2,"%i",&a22);
  сout<<"\n"<<a22;
  fscanf(f2,"%i",&a33);
  cout<<"\n"<<a33;
  fscanf(f2,"%f",&a44);
  cout<<"\n"<<a44;
  fscanf(f2,"%lf",&a55);
  cout<<"\n"<<a55;
  fscanf(f2,"%s",&a66);
  cout<<"\n"<<a66;
  fscanf(f2,"%s",a77);
  cout<<"\n"<<a77;
}
//---------------------------------------------------------------------------
int _tmain(int argc, _TCHAR* argv[])
{
    Vvod();
    FILE *f2;
 
    f2=fopen("str2.txt","w");
    ZapFail(f2);
    fclose(f2);
 
    f2=fopen("str2.txt","r");
    ChitFail(f2);
    fclose(f2);
}
И почему нельзя использовать <fstream> <iomanip> вместо fprint и fscan если уж ты используешь <iostream> ?
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.03.2012, 12:25

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

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

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

Запись объекта класса в файл и чтение из файла (Вызвано необработанное исключение: нарушение доступа для чтения)
Доброго времени суток. Вообщем-то есть некий класс Weapons: class Weapons { public: void...

Организация записи в файл и чтения атрибутов файла
Доброго времени суток на циферблате Друзья понимаешь!!!! КАК ОРГАНИЗОВАТЬ ЗАПИСЬ В ФАЙЛ И ЧТЕНИЕ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.