Noam_15

להשוות קבצים V3

Apr 2nd, 2017
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.49 KB | None | 0 0
  1.  
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5. enum status {success, fail};
  6.  
  7. void remove_Quotation_Marks (char str[], int len){
  8.     int i;
  9.     for(i=0;i<len;i++){
  10.         str[i] = str[i+1];
  11.     }
  12.     str[len] = NULL;
  13. }
  14.  
  15.  
  16. void main() {
  17.     enum status sss;
  18.     FILE *fp1,*fp2;
  19.     int q1,q2;
  20.     char str[200], ask;
  21.     printf("Compare 2 files -Invincible Version-     (No hebrew characters in the path please!)\n\n");
  22.  
  23.     do{
  24.         sss=success;
  25.         flushall();
  26.         printf("Enter first path:  ");
  27.         gets(str);
  28.         if (str[0]=='"') remove_Quotation_Marks (str,strlen(str)-2);
  29.         fp1 = fopen(str , "rb");
  30.  
  31.         printf("Enter second path:  ");
  32.         gets(str);
  33.         if (str[0]=='"') remove_Quotation_Marks (str,strlen(str)-2);
  34.         fp2 = fopen(str , "rb");
  35.  
  36.  
  37.         ////  עד כאן קלטנו
  38.  
  39.  
  40.         if(fp1 == NULL || fp1 == NULL) {
  41.             printf("Can't open file\n");
  42.             gets(str);
  43.             exit(0);
  44.         }
  45.  
  46.         do{
  47.             if (feof(fp1)){
  48.                 if (!feof(fp2)) sss=fail;
  49.                 break;
  50.             }
  51.  
  52.             if (sss==fail) break;
  53.             fread(&q1, sizeof(int) ,1,fp1);
  54.             fread(&q2, sizeof(int) ,1,fp2);
  55.             if (q1 != q2){
  56.                 printf("Different value\n");
  57.                 sss=fail;
  58.             }
  59.         }while(1);
  60.  
  61.         (sss==success)? printf("The files are the same!\n"): printf("The files are NOT the same!\n");
  62.         fclose(fp1);
  63.         fclose(fp2);
  64.  
  65.  
  66.         printf("\n\nAgain?  (Y/N)\n");
  67.         ask = getchar();
  68.         while(ask != 'y' && ask != 'Y' && ask != 'n' && ask != 'N'){
  69.             printf("Please enter Y/N!\n");
  70.             flushall();
  71.             ask = getchar();
  72.         }
  73.     }while(ask == 'y' || ask == 'Y');
  74.     gets(str);
  75. }
Advertisement
Add Comment
Please, Sign In to add comment