下面是C语言文件I/O的完整使用攻略。
什么是文件I/O
文件I/O是指文件的输入/输出操作。C语言中,文件的读写操作主要通过<stdio.h>
头文件中提供的函数实现。
文件的读写操作
打开文件
在进行文件读写前,首先需要打开文件:
FILE *fopen(const char *filename, const char *mode);
其中,filename
参数是要打开文件的路径,mode
参数表示打开文件时的模式。常见的模式包括:
r
:以只读方式打开文件。w
:以写方式打开文件,文件不存在时创建新文件。a
:以追加方式打开文件,文件不存在时创建新文件。
示例代码:
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "w");
if (file == NULL) {
printf("Failed to open file!");
return -1;
}
// ...
fclose(file);
return 0;
}
读写文件
读写文件操作主要使用以下函数:
fread
:从文件中读取数据。fwrite
:向文件中写入数据。fscanf
:从文件中读取格式化数据。fprintf
:向文件中写入格式化数据。
示例代码:
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "w");
if (file == NULL) {
printf("Failed to open file!");
return -1;
}
char buffer[1024] = "Hello, world!";
fwrite(buffer, sizeof(char), strlen(buffer), file);
fclose(file);
return 0;
}
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "r");
if (file == NULL) {
printf("Failed to open file!");
return -1;
}
char buffer[1024];
fread(buffer, sizeof(char), 1024, file);
printf("%s", buffer);
fclose(file);
return 0;
}
关闭文件
文件读写完成后,需要关闭文件:
int fclose(FILE *stream);
示例代码:
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "w");
if (file == NULL) {
printf("Failed to open file!");
return -1;
}
// ...
fclose(file);
return 0;
}
文件指针的操作
可以使用以下函数操作文件指针:
fseek
:设置文件指针的位置。ftell
:获取文件指针的位置。
示例代码:
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "w");
if (file == NULL) {
printf("Failed to open file!");
return -1;
}
fprintf(file, "Hello, world!");
fseek(file, 0, SEEK_SET);
char buffer[1024];
fread(buffer, sizeof(char), 1024, file);
printf("%s", buffer);
fclose(file);
return 0;
}
总结
以上是C语言文件I/O的完整使用攻略,通过对文件读写操作的介绍,可以实现基本的文件读写功能。需要注意的是,文件操作过程中需要注意错误处理,避免程序异常退出。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言 文件I/O - Python技术站