您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 电子商务 > 一个加密、解密文件的小程序代码
一个加密、解密文件的小程序代码://test01.cpp:定义控制台应用程序的入口点。//#includestdio.h#includestdlib.h#includestring.hvoidencfile(char*in_filename,char*pwd,char*out_filename);/*对文件进行加密的具体函数*/voiddecryptfile(char*in_filename,char*pwd,char*out_filename);/*对文件解密的具体函数*/intmain(intargc,char*argv[])/*定义main()函数的命令行参数*/{intoption;/*功能选择*/charin_filename[30];/*用户输入的要加密的文件名或是要解密的文件*/charout_filename[30];/*用户输入加密后保存的文件名或是解密保存的文件名*/charpwd[8];/*用来保存密码*/printf(1.加密文件2.解密文件\n);printf(请选择.....\n);scanf(%d,&option);getchar();if(argc!=4){/*容错处理*/printf(\n请输入你的文件名:\n);gets(in_filename);/*得到要加密的文件名*/printf(请输入密码:\n);gets(pwd);/*得到密码*/printf(写出输出文件名:\n);gets(out_filename);/*得到加密后你要的文件名*/}else{/*如果命令行参数正确,便直接运行程序*/strcpy(in_filename,argv[1]);strcpy(pwd,argv[2]);strcpy(out_filename,argv[3]);}switch(option){case1://加密encfile(in_filename,pwd,out_filename);/*加密函数调用*/break;case2://解密decryptfile(in_filename,pwd,out_filename);/*解密函数调用*/break;default:break;}system(pause);return0;}/*加密子函数开始*/voidencfile(char*in_filename,char*pwd,char*out_file){FILE*fp1,*fp2;registercharch;intj=0;intj0=0;fp1=fopen(in_filename,r);/*打开要加密的文件*/if(fp1==NULL){printf(打开不了文件.\n);exit(1);/*如果不能打开要加密的文件,便退出程序*/}fp2=fopen(out_file,w);if(fp2==NULL){printf(不能打开或者新建一个文件.\n);exit(1);/*如果不能建立加密后的文件,便退出*/}while(pwd[++j0]);ch=fgetc(fp1);/*加密算法开始*/while(!feof(fp1)){if(j07)j0=0;ch+=pwd[j0++];fputc(ch,fp2);ch=fgetc(fp1);}fclose(fp1);/*关闭源文件*/fclose(fp2);/*关闭目标文件*/}/*解密子函数开始*/voiddecryptfile(char*in_filename,char*pwd,char*out_file){FILE*fp1,*fp2;registercharch;intj=0;intj0=0;fp1=fopen(in_filename,r);/*打开要解密的文件*/if(fp1==NULL){printf(不能打开解密文件.\n);exit(1);/*如果不能打开要解密的文件,便退出程序*/}fp2=fopen(out_file,w);if(fp2==NULL){printf(不能建立解密后的文件.\n);exit(1);/*如果不能建立解密后的文件,便退出*/}while(pwd[++j0]);ch=fgetc(fp1);/*解密算法开始*/while(!feof(fp1)){if(j07)j0=0;ch-=pwd[j0++];fputc(ch,fp2);/*我的解密算法*/ch=fgetc(fp1);}fclose(fp1);/*关闭源文件*/fclose(fp2);/*关闭目标文件*/}
本文标题:一个加密、解密文件的小程序代码
链接地址:https://www.777doc.com/doc-7204173 .html