C语言对于文件的基本读写操作

之前已经对文件有了一些基本的了解,比如文件的定义,类型等,最重要的是关于C语言中对文件进行操作时的打开和关闭.
C语言文件操作的基本认识(文件是什么,文件的类型,文件指针,文件的打开和关闭)

接下来就来看C语言中对于文件的读写操作.

字符输入函数和字符输出函数
fgetc与fputc(每次获取一个字符)

先来看fgetc,fgetc是从文件中获取一个字符

#define _CRT_SECURE_NO_WARNINGS
#include 
#include 
int main(){
	FILE* fpr = NULL;
	char c;
	fpr = fopen("C:\\Users\\lenovo\\Desktop\\1.txt", "r");
	if (fpr == NULL){
		printf("open fail!\n");
		system("pause");
		return 0;
	}
	c = fgetc(fpr);
	printf("%c\n", c);
	fclose(fpr);
	fpr = NULL;
	system("pause");
	return 0;
}

注意以"r"的方式去打开一定要确保该文件存在,否则会打开失败.

fputc是往文件中写入一个字符

#define _CRT_SECURE_NO_WARNINGS
#include 
#include 
//fputc往文件中写入一个字符
int main(){
	FILE* fpw = NULL;
	fpw = fopen("C:\\Users\\lenovo\\Desktop\\2.txt", "w");
	if (fpw == NULL){
		printf("open fail!\n");
	}
	fputc('a', fpw);
	fclose(fpw);
	fpw = NULL;
	system("pause");
	return 0;
}

如果2.txt文件不存在就会在指定位置创建该文件并将字符’a’写进去,如果该文件本身就存在并且有内容,会将原来的内容删掉将新字符写入.
当然,如果是以追加(“a”)的方式打开,就会将新字符直接拼接在原文件内容的末尾.

文本行输入输出函数

fgets和fputs是在文件中获取字符串喝写入字符串的函数.

#define _CRT_SECURE_NO_WARNINGS
#include 
#include 
//fgets,从文件中获取字符串
int main(){
	FILE* fpr = NULL;
	char str[20];
	fpr = fopen("C:\\Users\\lenovo\\Desktop\\1.txt", "r");
	if (fpr == NULL){
		printf("open fail!\n");
	}
	fgets(str, 5, fpr);
	for (int i = 0; i < 5; ++i){
		printf("%c ", str[i]);
	}
	fclose(fpr);
	fpr = NULL;
	system("pause");
	return 0;
}

这样我们可以将从文件中获取到的字符串的每个字符打印出来,修改之后可以直接输出字符串.

#define _CRT_SECURE_NO_WARNINGS
#include 
#include 
//fputs,往文件中写入字符串
int main(){
	FILE* fpw = NULL;
	fpw = fopen("C:\\Users\\lenovo\\Desktop\\2.txt", "w");
	fputs("hello world", fpw);
	fclose(fpw);
	fpw = NULL;
	system("pause");
	return 0;
}

你可能感兴趣的:(进阶)