Ví dụ về file nhị phân lưu struct

#include<stdio.h>
typedef struct 
{
	int maSV;
	char hoTen[50];
	char lop[30];
}SinhVien;
int main()
{
	SinhVien sv;
	FILE *fp;
	int i,n;
	fp = fopen("SinhVien.dat","wb");
	printf("Nhập số sinh viên n = ");scanf("%d",&n);
	for(i=1;i<=n;i++)
	  {
	      printf("Nhập sinh viên thứ %d\n",i);
	      printf("Mã SV: ");scanf("%d",&sv.maSV);
	      getchar();
	      printf("Họ tên: ");gets(sv.hoTen);
	      printf("Lớp: ");gets(sv.lop);
	      fwrite(&sv,sizeof(SinhVien),1,fp);
	   }
	fclose(fp);
	printf("Danh sách sinh viên trong file:\n");
	fp = fopen("SinhVien.dat","rb");
	while (fread(&sv,sizeof(SinhVien),1,fp)>0)
	    printf("%-6d   %-30s   %-6s\n",sv.maSV,sv.hoTen,sv.lop);
	fclose(fp);
	return 0;
}

Last updated