Showing posts with label fseek. Show all posts
Showing posts with label fseek. Show all posts

Tuesday, 10 January 2012

Random Access File Writing in C

#include< stdio.h>

struct musteriVerisi{
int hesapNo;
char soyisim[15];
char isim[10];
double bakiye;
};
int main(){
    FILE*cfPtr;
    struct musteriVerisi musteri={0,"","",0.0};
    if((cfPtr=fopen("kredi.dat","r+"))==NULL)
    printf("Dosya acilamiyor\n");
    else{
        printf("Hesap numarasini giriniz(1-100)\n");
    scanf("%d",&musteri.hesapNo);
    while(musteri.hesapNo!=0)
    {
    printf("soyisim,isim,bakiye giriniz\n");
    fscanf(stdin,"%s%s%lf",musteri.soyisim,musteri.isim,&musteri.bakiye);
    fseek(cfPtr,(musteri.hesapNo-1)*sizeof(struct musteriVerisi),SEEK_SET);
    fwrite(&musteri,sizeof(struct musteriVerisi),1,cfPtr);
    printf("Hesap numarasini giriniz(1-100)\n");
    scanf("%d",&musteri.hesapNo);         
        } 
        fclose(cfPtr);
        
    }   
getch();
return 0;
}

Random Access File Reading in C

#include

struct musteriVerisi{
   int hesapNo;
   char soyisim[15];
   char isim[10];
   double bakiye;
   };
int main()
{
FILE*cfPtr;
struct musteriVerisi musteri={0,"","",0.0};
if((cfPtr=fopen("kredi.dat","r"))==NULL)
printf("Dosya acilamiyor\n");
else{
 printf("%-6s%-16s%-11s%10s\n","HspNo","Soyisim","Isim","Bakiye");
     while(!feof(cfPtr))
 {
 fread(&musteri,sizeof(struct musteriVerisi),1,cfPtr);
 
 if(musteri.hesapNo!=0)
 printf("%-6d%-16s%-11s%10.2f\n",musteri.hesapNo,
musteri.soyisim,musteri.isim,musteri.bakiye);        
     } 
     fclose(cfPtr);
 }
 getch();
 return 0;
}