简单的文件加密

#define  _CRT_SECURE_NO_WARNINGS//关闭安全检查
#include<stdio.h>
#include<stdlib.h>

char jia(char ch)
{
	return ch + 1;//可以使用位加密return ch^523;
}
char jie(char ch)
{
	return ch - 1;//可以使用位解密return ch^523;

}

void jiami(char *path, char *pathjia)
{
	FILE *pfr, *pfw;
	pfr = fopen(path, "r");//读取
	pfw = fopen(pathjia, "w");//写入
	if (pfr == NULL || pfw == NULL)
	{
		printf("失败");
	}
	else
	{
		while (!feof(pfr))//feof,文件结束返回1,否则返回0,前面加上!效果相反
		{
			char ch = fgetc(pfr);//读取字符
			putchar(ch);
			fputc(jia(ch), pfw);//写入加密字符
		}
		fclose(pfr);
		fclose(pfw);
	}
}
void jiemi(char *path, char *pathjie)
{
	FILE *pfw, *pfr;
	pfw = fopen(path, "r");
	pfr = fopen(pathjie, "w");
	if (pfr == NULL || pfw == NULL)
	{
		printf("解密失败");
	}
	else
	{
		while (!feof(pfw))
		{
			char ch = fgetc(pfw);
			putchar(ch);
			fputc(jie(ch), pfr);
		}
		fclose(pfw);
		fclose(pfr);
	}
}


void main()
{
	char *path = "C:\\Users\\snail\\Desktop\\1.txt";

	char *pathjia = "C:\\Users\\wh\\Desktop\\jiami.txt";
	char *pathjie = "C:\\Users\\wh\\Desktop\\jiemi.txt";

	jiami(path, pathjia);

	jiemi(pathjia, pathjie);

	system("pause");
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值