#include <stdio.h>
#include <string.h>
#include <stdlib.h>
struct Bilgiler{
int dosyaNo;
char dosyaAdi[50];
char dosyaTuru[20];
int dosyaSayisi;
int dosyaBoyut;
int belgeNo;
char belgeAdi[70];
char belgeTuru[20];
int belgeSayisi;
int belgeBoyut;
};
void belgeEkle();
void belgeListele2();
void TumListele();
void Duzenle();
void sil();
void ara();
void YenidenAdlandir();
void DosyaSil();
char mygetch();
char fname[]={"D:\\main.dat"};
int main()
{
int ch;
while(1)
{
system("cls"); //clrscr();
printf("==================Employee Management System=============\n\n");
printf("1. Ekle\n\n");
printf("2. Listele\n\n");
printf("3. ara\n\n");
printf("4. sil\n\n");
printf("5. Raporla\n\n");
printf("6. Duzenle\n\n");
printf("7. Sil\n\n");
printf("8. Dosya Sil\n\n");
printf("0. Çıkış\n\n");
printf("========================================================\n\n");
printf("\nSeçim Yapınız:");
scanf("%d",&ch);
switch(ch)
{
case 1: belgeEkle();
break;
case 2: belgeListele();
break;
case 3: ara();
break;
case 4: sil();
break;
case 5: Raporla();
break;
case 7: Duzenle();
break;
case 8: DosyaSil();
break;
case 0: exit(0);
}
mygetch();
}
}
void belgeEkle()
{
FILE *fp;
struct Bilgiler t1;
fp=fopen(fname,"ab");
printf("\nBelge No Giriniz:");
scanf("%d",&t1.belgeNo);
printf("\nBelge Adını Giriniz:");
scanf("%s",t1.belgeAdi);
printf("\nBelge Türünü Giriniz:");
scanf("%d",&t1.belgeTuru);
fwrite(&t1,sizeof(t1),1,fp);
fclose(fp);
}
void YenidenAdlandir()
{
char DosyaAdiYeni[20];
printf("\nYeni Dosya Adını Giriniz:");
fflush(stdin);
scanf("%[^\n]",DosyaAdiYeni);
rename(fname,DosyaAdiYeni);
strcpy(fname,DosyaAdiYeni);
}
void sil()
{
FILE *fp,*fp1;
struct Bilgiler t;
char dosyaAdi[20];
char val[20];
printf("\nKopyasını Almak İstiyor Musunuz (E/H):");
scanf("%s",val);
if(strcmp(val,"E")==0)
{
printf("\nKopyası Olacak Dosya Adı:");
fflush(stdin);
scanf("%[^\n]",dosyaAdi);
fp=fopen(dosyaAdi,"wb");
fp1=fopen(fname,"rb");
while(1)
{
fread(&t,sizeof(t),1,fp1);
if(feof(fp1))
{
break;
}
fwrite(&t,sizeof(t),1,fp);
}
fclose(fp);
fclose(fp1);
remove(fname);
strcpy(fname,dosyaAdi);
}
else
{
remove(fname);
}
}
void Duzenle()
{
FILE *fp,*fp1;
struct Bilgiler t,t1;
int belgeNo,found=0,count=0;
fp=fopen(fname,"rb");
fp1=fopen("temp.dat","wb");
printf("\nBelge Numarası Giriniz:");
scanf("%d",&belgeNo);
while(1)
{
fread(&t,sizeof(t),1,fp);
if(feof(fp))
{
break;
}
if(t.belgeNo==belgeNo)
{
found=1;
printf("\nBelge İd Giriniz:");
scanf("%d",&t.belgeNo);
fflush(stdin);
printf("\nDosya Adı Giriniz:");
scanf("%s",t.dosyaAdi);
printf("\nDosya Türü Giriniz:");
scanf("%d",&t.dosyaTuru);
fwrite(&t,sizeof(t),1,fp1);
}
else
{
fwrite(&t,sizeof(t),1,fp1);
}
}
fclose(fp);
fclose(fp1);
if(found==0)
{
printf("Böyle Bir Kayıt Yok\n\n");
}
else
{
fp=fopen(fname,"wb");
fp1=fopen("temp.dat","rb");
while(1)
{
fread(&t,sizeof(t),1,fp1);
if(feof(fp1))
{
break;
}
fwrite(&t,sizeof(t),1,fp);
}
}
fclose(fp);
fclose(fp1);
}
void DosyaSil()
{
FILE *fp,*fp1;
struct Bilgiler t,t1;
int belgeNo,found=0,count=0;
fp=fopen(fname,"rb");
fp1=fopen("temp.dat","wb");
printf("\nSilmek İstediğiniz İd:");
scanf("%d",&belgeNo);
while(1)
{
fread(&t,sizeof(t),1,fp);
if(feof(fp))
{
break;
}
if(t.belgeNo==belgeNo)
{
found=1;
}
else
{
fwrite(&t,sizeof(t),1,fp1);
}
}
fclose(fp);
fclose(fp1);
if(found==0)
{
printf("Bulunamadı\n\n");
}
else
{
fp=fopen(fname,"wb");
fp1=fopen("temp.dat","rb");
while(1)
{
fread(&t,sizeof(t),1,fp1);
if(feof(fp1))
{
break;
}
fwrite(&t,sizeof(t),1,fp);
}
}
fclose(fp);
fclose(fp1);
}
void goruntule()
{
FILE *fp;
struct Bilgiler t;
int belgeNo,found=0;
fp=fopen(fname,"rb");
printf("\nBelge No Giriniz:");
scanf("%d",&belgeNo);
while(1)
{
fread(&t,sizeof(t),1,fp);
if(feof(fp))
{
break;
}
if(t.belgeNo==belgeNo)
{
found=1;
printf("\n========================================================\n\n");
printf("\t\t Detaylar %d\n\n",t.belgeNo);
printf("========================================================\n\n");
printf("Dosya\n\n");
printf("%s\t",t.belgeAdi);
printf("%d\t\n\n",t.belgeTuru);
printf("========================================================\n\n");
}
}
if(found==0)
{
printf("\nKayıt Yok");
}
fclose(fp);
}
void ara()
{
FILE *fp;
struct Bilgiler t;
int found=0;
char belgeAdi[20];
fp=fopen(fname,"rb");
printf("\nBelge Adını Giriniz:");
scanf("%s",&belgeAdi);
while(1)
{
fread(&t,sizeof(t),1,fp);
if(feof(fp))
{
break;
}
if(strcmp(belgeAdi,t.belgeAdi)==0)
{
printf("\n========================================================\n\n");
printf("\t\t Detay %d\n\n",t.belgeNo);
printf("========================================================\n\n");
printf("BelgeAdi\belgeTuru\n\n");
printf("%s\t",t.belgeAdi);
printf("%d\t\n\n",t.belgeTuru);
printf("========================================================\n\n");
}
}
if(found==0)
{
printf("\nHata");
}
fclose(fp);
}
void TumListele()
{
FILE *fp;
struct Bilgiler t;
fp=fopen(fname,"rb");
printf("\n========================================================\n\n");
printf("\t\t Tüm Detaylar\n\n");
printf("========================================================\n\n");
printf("DosyaNo\n\n");
while(1)
{
fread(&t,sizeof(t),1,fp);
if(feof(fp))
{
break;
}
printf("%d\t",t.belgeNo);
printf("%s\t",t.belgeAdi);
printf("%d\t\n\n",t.belgeTuru);
}
printf("========================================================\n\n");
fclose(fp);
fclose(fp);
}
char mygetch()
{
char val;
char rel;
scanf("%c",&val);
scanf("%c",&rel);
return (val);
} C Dili Bilenler Bakabilirmi r10+
3
●72
- 06-06-2021, 15:16:26Merhaba Projem var fakat yetiştiremedim basit bir hata ama anlamadım nerede olduğunu bakabilir misiniz lütfen
- 06-06-2021, 15:24:41Team viewer üzerinden bağlanıp bakabilir miyim çözebilirim belki hatayı