Chuyển đổi nội dung file thành chữ hoa và ghi nội dung vào file trong C



Bài tập C: Chuyển đổi nội dung file thành chữ hoa và ghi nội dung vào file

Bài tập này giúp bạn làm quen với các hàm để mở file, đóng file, đọc ghi file trong C. Ngoài ra, để chuyển đổi thành chữ hoa, bạn sử dụng hàm toupper() trong C.

Chương trình C

Dưới đây là chương trình C để giải bài tập chuyển đổi nội dung file thành chữ hoa và ghi nội dung vào file trong C:

#include
#include
#includeint main() {
   FILE *fp1, *fp2;
   char a;   fp1 = fopen("baitapc.txt", "r");
   if (fp1 == NULL) {
      puts("Khong the mo file nay");
      exit(1);
   }   fp2 = fopen("baitapc1.txt", "w");
   if (fp2 == NULL) {
      puts("Khong the mo file nay");
      fclose(fp1);
      exit(1);
   }   do {
      a = fgetc(fp1);
      a = toupper(a);
      fputc(a, fp2);
   } while (a != EOF);   return(0);
}

Giải thích chương trình C trên

  • Đầu tiên chúng ta mở một file trong chế độ đọc và mở file khác trong chế độ ghi:

    fp1=fopen("baitapc.txt","r");
    fp2=fopen("baitapc1.txt","w");
    
  • Bây giờ đọc từng ký tự, và sử dụng hàm toupper() để chuyển đổi sang chữ hoa.

    do   {
         a=fgetc(fp1);
         a=toupper(a);
         fputc(a,fp2);
    }while(a!=EOF);
    
  • Sau khi chuyển đổi sang chữ hoa, chúng ta ghi dữ liệu vào file khác. Bất cứ khi nào gặp ký tự EOF (viết tắt của End of File) thì chúng ta kết thúc tiến trình đọc và ghi file.

Kết quả của ví dụ C trên

Giả sử trong baitapc.txt chúng ta có nội dung sau:

Sao chép file trong C

Sau khi biên dịch chương trình C trên, bạn sẽ thấy trong baitapc1.txt có nội dung sau:

Chuyển nội dung file thành chữ hoa trong C
bai-tap-doc-ghi-file-trong-c.jsp