C语言——文件内容的读取与替换操作

要点:

1、fgetc() 字符读取操作

2、fgets()字符串读取操作(整行读取)

3、is系列函数:如isupper(c)和islower(c)

4、fputs()函数写入字符


int replaceBlankAndBig(int argc, char* argv[]){
	char c;
	FILE *fin, *fout;
	fin = fopen("The_Holy_Bible.txt", "r");
	if (!fin) {
		perror("The_Holy_Bible.txt");
		return;
	}
	fout = fopen("The_Holy_Bible_Res.txt", "w");
	if (!fout) {
		perror("The_Holy_Bible_Res.txt");
		return;
	}
	while ((c = fgetc(fin)) != EOF) { 
		//if (isupper(c) || islower(c))  //大小写互换!
		if (isupper(c))
			c ^= 0x20;
		else if (ispunct(c))
		//else if (c==','||c=='.')
			c = ' ';
		fputc(c, fout);
	}
	fclose(fin);
	fclose(fout);
	return 0;
}

int cnt(int argc, char* argv[]){
	char c;
	FILE *fin, *fout;
	int cnt_char = 0, cnt_word = 1, cnt_line = 1;
	fin = fopen("The_Holy_Bible_Res.txt", "r");
	if (!fin){
		perror("The_Holy_Bible_Res.txt");
		return;
	}
	char str[1000];
	int i;
	while ((fgets(str, 1000, fin)) != NULL){
		for (i = 0; i < strlen(str); ++i){
			if (!isspace(str[i]))
				cnt_char++;
			if (isspace(str[i]))
				cnt_word++;
			if (str[i] == '\n')
				cnt_line++;
		}
	}
	printf("chars:%d\nwords:%d\nlines:%d\n",cnt_char, cnt_word,cnt_line);
	fclose(fin);

	return 0;
}

常用的文件操作函数:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值