FILE_NHANSU

Màu nền
Font chữ
Font size
Chiều cao dòng

#include"stdio.h"

#include"conio.h"

#include"iostream.h"

#include"iomanip.h"

#include"fstream.h"

#include"process.h"

#include"string.h"

class nhansu

{

private:

char hoten[35];

int tuoi;

char donvi[30];

char que[20];

public:

void nhap();

void xuat();

friend void docfile(char *tentep,nhansu *ns,int &n);

friend void bosung(char *tentep);

friend void sua(char *tentep);

friend void chen(char *tentep);

friend void tim(char *tentep);

friend void xoa(char *tentep);

friend void xuatfile(char *tentep);

friend void ghi(char *tentep,nhansu *ns,int n);

};

void nhansu::nhap()

{

cout<<"

Nhap hoten:"; gets(hoten);

cout<<"

Nhap tuoi:"; cin>>tuoi;

cout<<"

Nhap donvi:"; gets(donvi);

cout<<"

Nhap que:"; gets(que);

};

void nhansu::xuat()

{

cout<<"

"<<setw(10)<<hoten<<setw(6)<<tuoi<<setw(10)<<donvi<<setw(10)<<que;

}

void taofile(char *tentep)

{

FILE *f;

int i,n;

nhansu tg;

f=fopen(tentep,"wb");

cout<<"

Nhap so ban ghi n="; cin>>n;

for(i=1;i<=n;i++)

{ cout<<"

nhap ban ghi thu "<<i;

tg.nhap();

fwrite(&tg,sizeof(nhansu),1,f);

}

fclose(f);

}

void docfile(char *tentep,nhansu *ns,int &n)

{

FILE *f;

int i,d;

f=fopen(tentep,"rb");

fseek(f,0,2);

d=ftell(f);

n=d/sizeof(nhansu);

fseek(f,0,0);

for(i=1;i<=n;i++)

fread(&ns[n],sizeof(nhansu),1,f);

fclose(f);

}

/*void bosung(char *tentep)

{

FILE *f;

nhansu tg;

int n;

f=fopen(tentep,"rb");

fseek(f,0,0);

fread(&n,sizeof(int),1,f);

n++;

fwrite(&n,sizeof(int),1,f);

fclose(f);

f=fopen(tentep,"ab");

fseek(f,0,2);

cout<<"

nhap ban ghi moi:

";

tg.nhap();

fwrite(&tg,sizeof(nhansu),1,f);

fclose(f);

}

void sua(char *tentep)

{

FILE *f,*f1;

char *tentep1;

int vt,n,i,d;

nhansu tg,tg1;

tentep1="trunggian";

f=fopen(tentep,"rb");

f1=fopen(tentep1,"wb");

//dem so ban ghi

fseek(f,0,2);

d=ftell(f);

n=d/sizeof(nhansu);

fseek(f,0,0);

fseek(f1,0,0);

cout<<"

Nhap vi tri can sua"; cin>>vt;

cout<<"

Nhap du lieu can sua";

tg.nhap();

//chuyen du lieu tu f sang f1

for(i=1;i<=n;i++)

{fread(&tg1,sizeof(nhansu),1,f);

if (i==vt)

fwrite(&tg,sizeof(nhansu),1,f1);

else

fwrite(&tg1,sizeof(nhansu),1,f1);

}

fclose(f);

fclose(f1);

remove(tentep);

rename(tentep1,tentep);

}

void xoa(char *tentep)

{

FILE *f,*f1;

char *tentep1;

int vt,n,i,d;

nhansu tg,tg1;

tentep1="trunggian";

f=fopen(tentep,"rb");

f1=fopen(tentep1,"wb");

//dem so ban ghi

fseek(f,0,2);

d=ftell(f);

n=d/sizeof(nhansu);

fseek(f,0,0);

cout<<"

Nhap vi tri can xoa"; cin>>vt;

fflush(f1);

for(i=1;i<=n;i++)

{fread(&tg1,sizeof(nhansu),1,f);

if (i!=vt)

fwrite(&tg1,sizeof(nhansu),1,f1);

}

fclose(f);

fclose(f1);

remove(tentep);

rename(tentep1,tentep);

}

void tim(char *tentep)

{

FILE *f;int i,n,d;

nhansu tg;

int tuoi1;

f=fopen(tentep,"rb");

fseek(f,0,2);

d=ftell(f);

n=d/sizeof(nhansu);

fseek(f,0,0);

cout<<"

Nhap tuoi can tim:"; cin>>tuoi1;

for(i=1;i<=n;i++)

{

fread(&tg,sizeof(nhansu),1,f);

if(tg.tuoi==tuoi1)

tg.xuat();

// if(tg.tuoi==tuoi1)

}

fclose(f);

} */

void xuatfile(char *tentep)

{

FILE *f;

int i,n,d;

nhansu tg;

f=fopen(tentep,"rb");

fseek(f,0,2);

d=ftell(f);

n=d/sizeof(nhansu);

fseek(f,0,0);

for(i=1;i<=n;i++)

{

fread(&tg,sizeof(nhansu),1,f);

tg.xuat();

}

fclose(f);

}

/*void ghi(char *tentep,nhansu *ns,int n)

{

FILE *f;

int i;

f=fopen(tentep,"wb");

fflush(f);

for(i=1;i<=n;i++)

fwrite(&ns[i],sizeof(nhansu),1,f);

fclose(f);

} */

void main()

{

char *tentep;

nhansu ns[100];

int i,n;

clrscr();

cout<<"

Nhap ten file:"; gets(tentep);

taofile(tentep);

cout<<"

Danh sach sau khi nhap:

";

cout<<"

hoten tuoi donvi que";

xuatfile(tentep);

docfile(tentep,ns,n);

/* cout<<"

Danh sach nhan su tu lop la:";

for(i=1;i<=n;i++)

ns[i].xuat();

bosung(tentep);

cout<<"

Danh sach sau khi bo sung la:";

xuatfile(tentep);

sua(tentep);

cout<<"

Danh sach sau khi sua la:";

xuatfile(tentep);

tim(tentep);

xoa(tentep);

cout<<"

Danh sach sau khi xoa la:";

xuatfile(tentep);

//ghi(tentep,ns,n); */

getch();

}

 

 

 

 

 

 

 

 

Bạn đang đọc truyện trên: Truyen2U.Pro