Advertisement
akevintg

APPLIED FILE HANDLING

Dec 12th, 2015
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.36 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<string.h>
  3. #include<ctype.h>
  4. //Barbar Version
  5. // FILE BeeFest Donwload : https://www.dropbox.com/s/4ty13l0dlatk0o9/BeeFest.txt?dl=0
  6. int main(){
  7.     char title[10][100];
  8.     char Speaker[10][100];
  9.     char teks[10][100000];
  10.     int i=0;
  11.     int hitung=0;
  12.     //baca dulu filenya
  13.     FILE *penampung;
  14.     penampung=fopen("BeeFest.txt", "r");
  15.     if(penampung==NULL)
  16.         printf("File tidak ditemukan");
  17.     else{
  18.         while(!feof(penampung)){
  19.             fscanf(penampung, "%[^;];%[^;];%[^;];",title[hitung],Speaker[hitung],teks[hitung]);
  20.             hitung++;
  21.         }
  22.         hitung--;
  23.     }
  24.     //selesai baca tampilin menu
  25.     int pilihMenu;
  26.     int pilihData;
  27.     int flag;// Perjanjian : flag=1 tanda ada peraturna yg di langgar
  28.     do{
  29.         for(i=0;i<50;i++)//print enter biar menu sellau di paling bawah(biar rapih)
  30.             printf("\n");
  31.         for(i=0;i<hitung;i++)//print list datanya
  32.             printf("%d. Title: %s, Speaker: %s\n",i+1,title[i],Speaker[i]);
  33.         printf("\n\n1. Read Notes\n2. Input\n3. Save and Exit\n");
  34.         printf("Masukan Input: ");
  35.         scanf("%d",&pilihMenu);fflush(stdin);getchar();
  36.         switch(pilihMenu){
  37.             case 1://1 buat tampilin deksprisi lengkah
  38.             do{
  39.                 printf("Masukan Data yang ingin ditampilkan: ");
  40.                 scanf("%d",&pilihData);fflush(stdin);getchar();
  41.             }while(pilihData>hitung||pilihData<1);//cek ga boleh data yang ga ada(>hitung) dan ga boleh 0 juga
  42.             pilihData--;
  43.             printf("Title: %s\n",title[pilihData]);
  44.             printf("Speaker: %s\n",Speaker[pilihData]);
  45.             printf("Teks: %s\n\n",teks[pilihData]);
  46.             break;
  47.             case 2:
  48.             // notes : mis isi var hitung sekarnag 2, nah berarti array yg kepake 0 dan 1(2 belum kepake)
  49.             // jadi bisa dimasukin langsung ke title[hitung](baca title[2])
  50.             printf("Masukan Title : ");
  51.             scanf("%[^\n]",title[hitung]);fflush(stdin);getchar();
  52.             do{
  53.                 flag=0;
  54.                 printf("Masukan Speaker : ");
  55.                 scanf("%[^\n]",Speaker[hitung]);fflush(stdin);getchar();
  56.                 for(i=0;i<strlen(Speaker[hitung]);i++){
  57.                     if(!isalpha(Speaker[hitung][i]))
  58.                         flag=1;
  59.                 }
  60.                 if(strlen(Speaker[hitung])<3||strlen(Speaker[hitung])>30)
  61.                     flag=1;
  62.             }while(flag==1);
  63.             do{
  64.                 flag=0;
  65.                 printf("Masukan Notes : ");
  66.                 scanf("%[^\n]",teks[hitung]);fflush(stdin);getchar();
  67.                 if(strlen(teks[hitung])<20||strlen(teks[hitung])>300)
  68.                     flag=1;
  69.             }while(flag==1);
  70.             printf("Berhasil Memasukan Data\n<press enter to exit>");
  71.             hitung++;
  72.             break;
  73.             case 3:
  74.             //buat nge savenya
  75.             penampung=fopen("BeeFest.txt", "w");
  76.             for(i=0;i<hitung;i++){
  77.                 fprintf(penampung, "%s;%s;%s;",title[i],Speaker[i],teks[i]);
  78.             }
  79.             fclose(penampung);
  80.             //selesai save
  81.             printf("Berhasil Save\n<press enter to exit>");
  82.             break;
  83.             default:
  84.             break;
  85.         }          
  86.         getchar();
  87.     }while(pilihMenu!=3);
  88.     fclose(penampung);
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement