Computer >> Máy Tính >  >> Lập trình >> lập trình C

Khái niệm cơ bản về xử lý tệp trong C

Ở đây chúng ta sẽ thấy một số thao tác xử lý tệp cơ bản trong C. Các thao tác được liệt kê bên dưới:

  • Ghi vào một tệp
  • Đọc từ tệp
  • Xuất hiện trong một tệp

Ghi vào tệp

Xem mã để biết cách chúng tôi ghi vào tệp

Mã mẫu

#include <stdio.h>
int main() {
   FILE *fp;
   char *filename = "sample.txt";
   char *content = "Hey there! You've successfully created a file with content in c programming language.";
   /* open for writing */
   fp = fopen(filename, "w");
   if( fp == NULL ) {
      printf("%s: failed to open. \n", filename);
      return -1;
   } else {
      printf("%s: opened in write mode.\n", filename);
   }
   /* Write content to file */
   fprintf(fp, "%s\n", content);
   if( !fclose(fp) )
      printf("%s: closed successfully.\n", filename);
   return 0;
}

Đầu ra

sample.txt: opened in write mode.
sample.txt: closed successfully.

2.Đọc từ tệp

Viết mã để biết cách chúng tôi đọc từ tệp Tạo tệp (file_read.txt):

Bạn đã mở một tệp bằng ngôn ngữ lập trình C, ở chế độ chỉ đọc.

Mã mẫu

#include <stdio.h>
int main() {
   FILE *fp;
   char *filename = "file_read.txt";
   char ch;
   /* open for writing */
   fp = fopen(filename, "r");
   if (fp == NULL) {
      printf("%s does not exists \n", filename);
      return;
   } else {
      printf("%s: opened in read mode.\n\n", filename);
   }
   while ((ch = fgetc(fp) )!= EOF) {
      printf ("%c", ch);
   }
   if (!fclose(fp))
      printf("\n%s: closed.\n", filename);
   return 0;
}

Đầu ra

file_read.txt: opened in read mode.
You have opened a file using C programming language, in read-only mode.
file_read.txt: closed.

3. Đăng ký vào một tệp

Viết mã để biết cách chúng tôi có thể nối các dòng vào một tệp.

Tạo tệp (file_append.txt)

This text was already there in the file.

Mã mẫu

#include <stdio.h>
int main() {
   FILE *fp;
   char ch;
   char *filename = "file_append.txt";
   char *content = "This text is appeneded later to the file, using C programming.";
   /* open for writing */
   fp = fopen(filename, "r");
   printf("\nContents of %s -\n\n", filename);
   while ((ch = fgetc(fp) )!= EOF) {
      printf ("%c", ch);
   }
   fclose(fp);
   fp = fopen(filename, "a");
   /* Write content to file */
   fprintf(fp, "%s\n", content);
   fclose(fp);
   fp = fopen(filename, "r");
   printf("\nContents of %s -\n", filename);
   while ((ch = fgetc(fp) )!= EOF) {
      printf ("%c", ch);
   }
   fclose(fp);
   return 0;
}

Đầu ra

Contents of file_append.txt -
This text was already there in the file.
Appending content to file_append.txt...
Content of file_append.txt after 'append' operation is -
This text was already there in the file.
This text is appeneded later to the file, using C programming.