|
在C语言中,文件是一个非常重要的概念,可以用于读取、写入和修改数据。本文将介绍C语言中的文件操作,包括如何打开、读取和写入文件,并提供示例代码。
1、打开文件
要打开文件,需要使用fopen()函数。该函数接受两个参数:文件名和模式。文件名是要打开的文件的名称,模式是打开文件时使用的模式。模式可以是以下之一:
- "r":只读模式
- "w":写入模式,会清空文件内容
- "a":追加模式,会在文件末尾追加数据
- "r+":读写模式
示例代码:
#include <stdio.h>
int main() {
FILE *fp;
char filename[] = &#34;example.txt&#34;;
char mode[] = &#34;r&#34;;
fp = fopen(filename, mode);
if (fp == NULL) {
printf(&#34;Failed to open file.\n&#34;);
return 1;
}
printf(&#34;File opened successfully.\n&#34;);
fclose(fp);
return 0;
}
在示例代码中,使用fopen()函数打开名为example.txt的文件。如果文件无法打开,则会打印错误消息并退出程序。
2、读取文件
要从文件中读取数据,需要使用fread()或fgets()函数。fread()函数允许直接从文件中读取二进制数据,而fgets()函数允许按行读取文本数据。示例代码:
#include <stdio.h>
int main() {
FILE *fp;
char filename[] = &#34;example.txt&#34;;
char mode[] = &#34;r&#34;;
char buffer[256];
fp = fopen(filename, mode);
if (fp == NULL) {
printf(&#34;Failed to open file.\n&#34;);
return 1;
}
printf(&#34;File opened successfully.\n&#34;);
while (fgets(buffer, sizeof(buffer), fp) != NULL) {
printf(&#34;%s&#34;, buffer);
}
fclose(fp);
return 0;
}
在示例代码中,使用fgets()函数从文件中按行读取数据,并将其打印到控制台上。
3、写入文件
要向文件中写入数据,需要使用fwrite()或fputs()函数。fwrite()函数允许直接向文件中写入二进制数据,而fputs()函数允许向文件中写入文本数据。示例代码:
#include <stdio.h>
int main() {
FILE *fp;
char filename[] = &#34;example.txt&#34;;
char mode[] = &#34;w&#34;;
char buffer[] = &#34;Hello, world!&#34;;
fp = fopen(filename, mode);
if (fp == NULL) {
printf(&#34;Failed to open file.\n&#34;);
return 1;
}
printf(&#34;File opened successfully.\n&#34;);
fputs(buffer, fp);
fclose(fp);
return 0;
}
在示例代码中,使用fputs()函数将字符串&#34;Hello, world!&#34;写入到名为example.txt的文件中。
4、关闭文件
完成文件操作后,应使用fclose()函数关闭文件。示例代码:
完成文件操作后,应使用fclose()函数关闭文件。示例代码:
#include <stdio.h>
int main() {
FILE *fp;
char filename[] = &#34;example.txt&#34;;
char mode[] = &#34;r&#34;;
char buffer[256];
fp = fopen(filename, mode);
if (fp == NULL) {
printf(&#34;Failed to open file.\n&#34;);
return 1;
}
printf(&#34;File opened successfully.\n&#34;);
fclose(fp);
return 0;
} 在示例代码中,使用fclose()函数关闭名为example.txt的文件。
总结:
文件操作是C语言中的一个重要概念。要使用文件,需要使用fopen()函数打开文件,并使用fread()、fgets()、fwrite()或fputs()函数读取或写入数据。完成文件操作后,应使用fclose()函数关闭文件。 |
|