You are on page 1of 2

Clasa:FISIER

antet.h
#pragma once

using namespace std;

class Fisier{
FILE *pf;
public:
Fisier(const char *nume,const char *mod);
~Fisier();
size_t read(const size_t nr,const size_t dim,void *temp);
size_t write(const size_t nr,const size_t dim,const void *temp);

};

functii.cpp
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include "header.h"

using namespace std;

Fisier::Fisier(const char *nume,const char *mod)


{
pf=fopen(nume, mod);
}

Fisier::~Fisier()
{
if(pf!=0)
fclose(pf);
}

size_t Fisier::read(const size_t nr,const size_t dim,void *temp)


{
if(pf!=0)
return fread(temp,dim,nr,pf);
else
return 0;
}

size_t Fisier::write(const size_t nr,const size_t dim,const void *temp)


{
if(pf!=0)
return (fwrite(temp,dim,nr,pf));
else

return 0;
}

main.cpp
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include "header.h"

using namespace std;

int main(void)
{
Fisier f1("fis1.txt","r");
Fisier f2("fis2.txt","w");

char temp[128];
size_t nr_octeti;
while((nr_octeti=f1.read(128,sizeof(char),temp))!=0)
f2.write(nr_octeti,sizeof(char),temp);

_getch();

return 0;
}

You might also like