Advertisement
Guest User

FILE APPEND SLIDE

a guest
Jan 16th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.60 KB | None | 0 0
  1. /* Esempio: Scrivere un programma in C che presi in input due file, denominati fileuno e filedue
  2. contenenti caratteri minuscoli, copi il contenuto di filedue in coda a fileuno, e successivamente crei un
  3. nuovo file, il cui nome è inserito dall’utente, in cui sia copiato il contenuto di fileuno invertendo le
  4. minuscole con le maiuscole. */
  5.  
  6. #include <stdio.h>
  7. #include <stdlib.h>
  8. #include <string.h>
  9. #include <ctype.h>
  10.  
  11. int copia_append(FILE*, FILE*);
  12. int file_maiuscole(FILE *, FILE *);
  13.  
  14. int main(int argc, char *argv[]) {
  15.   if (argc!=3) {
  16.     printf("MISSING FILES.\n");
  17.     exit(1);
  18.   } else printf("ARGUMENTS OK!\n" );
  19.  
  20.   FILE *uno, *due, *tre;
  21.  
  22.   uno=fopen(argv[1],"a+");
  23.   if (uno==NULL) {
  24.     printf("FILE %s ERROR.\n", argv[1]);
  25.     exit(1);
  26.   } else printf("FILE %s OK!\n", argv[1]);
  27.  
  28.   due=fopen(argv[2],"r");
  29.   if (due==NULL) {
  30.     printf("FILE %s ERROR.\n", argv[2]);
  31.     exit(1);
  32.   } else printf("FILE %s OK!\n", argv[2]);
  33.  
  34.   tre=fopen("filetre","w");
  35.  
  36.   if (!copia_append(uno,due)) {
  37.     printf("COPY ERROR.\n");
  38.     exit(1);
  39.   } else printf("COPY OK!\n");
  40.  
  41.   if (!file_maiuscole(uno,tre)) {
  42.     printf("CONVERSION ERROR.\n");
  43.     exit(1);
  44.   } else printf("CONVERSION OK!\n");
  45.  
  46.   fclose(uno);
  47.   fclose(due);
  48.   fclose(tre);
  49.   return 0;
  50. }
  51.  
  52. int copia_append(FILE *unoPtr, FILE *duePtr){
  53.   char c;
  54.   while ((c = fgetc(duePtr)) != EOF) {
  55.     fputc(c,unoPtr);
  56.   }
  57.   return 1;
  58. }
  59.  
  60. int file_maiuscole(FILE *unoPtr, FILE *trePtr){
  61.   char c;
  62.   char u;
  63.   rewind(unoPtr);
  64.   while ((c = fgetc(unoPtr)) != EOF) {
  65.     u = toupper(c);
  66.     fputc(u,trePtr);
  67.   }
  68.   return 1;
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement