01/10/2018, 08:53

Cấu Trúc từ đọc tập tin

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct sach{
	int ma;
	char ten[30];
	char tacgia[20];
	int nxb;
	
};
void docfile(FILE *f,struct sach sv[30]);
void ghifile(FILE *f,struct sach sv[30]);
int main()
{
	FILE *fi,*fo;
	struct sach sv[10];
   	docfile(fi,sv);
   	ghifile(fo,sv);	
	printf("
%-20s %-25s %-20s %-10s
 ","Ma Sach","Ten Sach","Tac Gia","Ma NXB");

    return(0);
}
void docfile(FILE *f,struct sach sv[30])
{
	char temp[10];
	f=fopen("D:/fi.txt","r");
	int i=0 ;
	for(int i=0;i<3;i++)
	{
		fflush(stdin);
		fscanf(f,"%d",&sv[i].ma);
		fgets(temp,2,f);
		
		fgets(sv[i].ten,255,f);fflush(stdin);
		sv[i].ten[strlen(sv[i].ten)-1]='';
		
		
		fgets(sv[i].tacgia,255,f);	
		sv[i].ten[strlen(sv[i].tacgia)-1]='';
		fflush(stdin);
		
		
		fscanf(f,"%d",&sv[i].nxb);
		
	}



	fclose(f);
}
void ghifile(FILE *f,struct sach sv[30])
{
	f=fopen("D:/fo.txt","w");
	fprintf(f,"
%-15s %-30s %-20s %-15s
","Ma","Ten Sach","Tac Gia","Ma NXB");
	for(int i=0;i<3;i++)
	{
	fprintf(f,"%-15d %-30s %-20s %-15d
",sv[i].ma,sv[i].ten,sv[i].tacgia,sv[i].nxb);
	}
	fclose(f);
}

Tình Hình Là Việc Hàm docfile của em có vẫn đề ở chỗ cứ đọc dấu “cách” và"xuống hàng" làm cho cấu trúc lộn tùng phèo.
em đã thử nhiều cách như tạo 1 chuỗi để đọc rồi loại bỏ “cách” với “xuống hàng” nhưng vẫn ko triệt để .
Anh chị em bạn dì có cách nào giúp em với ạ ^^

Bài liên quan
0