C语言中文件处理的基础

在这里,我们将看到一些用C语言进行的基本文件处理操作。下面列出了这些操作:

  • 写入文件

  • 从文件读取

  • 附加在文件中

写入文件

选择代码以了解我们如何写入文件

范例程式码

#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;
}

输出结果

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

2.从文件读取

选择代码以了解我们如何从文件中读取文件。创建文件(file_read.txt):

您已经以只读模式使用C编程语言打开了一个文件。

范例程式码

#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;
}

输出结果

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.追加到文件中

选择代码以了解如何将行添加到文件中。

制作文件(file_append.txt)

This text was already there in the file.

范例程式码

#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;
}

输出结果

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.