温习了下文件的读写操作
做下笔记
1》首先是读文件:
1.在对应的文件夹创建 D:\\test\\myTest.txt文件,且输入自己待测试的文字内容。
2.读的代码如下,就会打印出myTest的文件的内容。
int main(){ char *path = "D:\\test\\myTest.txt"; FILE *fp = fopen(path, "r"); char buff[500]; while (fgets(buff, 50, fp)) { printf("%s", buff); } fclose(fp); system("pause"); return 0;}
2》写文件
比较好理解,直接贴代码
int main() { char *path = "D:\\test\\myTest_write.txt"; FILE *fp = fopen(path, "w"); if (fp == NULL) { printf("文件操作失败,直接return"); return 0; } char *text = "hello world"; fputs(text, fp); fclose(fp); system("pause"); return 0;}
3》读写非文本文件(读二进制文件)
int main() { char * read_path = "D:\\test\\myTest.jpg"; char * write_path = "D:\\test\\myTest_write.jpg"; //读 FILE * read_fp = fopen(read_path, "rb");//注意传入的属性值 //写(实际上就是复制一份) FILE * write_fp = fopen(write_path, "wb"); char buff[50]; int len = 0; while ((len = fread(buff, sizeof(char), 50, read_fp)) != 0) { fwrite(buff, sizeof(char), len, write_fp); } fclose(read_fp); fclose(write_fp); system("pause"); return 0;}
看了上面,是不是有一点点小成就了呢?都可以读取任意的文件的内容了
额,没感觉到啥啊。那说明你要好好思考如何举一反三了。
可读可写,是不是就意味着可以对文件的数据进行操作,让别人看不了文件内容呢?
答案是肯定的,那就可以写一个简单的文件加密程序吧。
直接贴成果:
加密解密方法:
void myEncodeAnDecode(char prePath[], char resultPath[], int password) { FILE * normal_fp = fopen(prePath, "rb"); FILE * encode_fp = fopen(resultPath, "wb"); int ch; while ((ch = fgetc(normal_fp)) != EOF){ fputc(ch ^ password, encode_fp); } fclose(normal_fp); fclose(encode_fp);}
然后看应用:
int main() { char * oriPath = "D:\\picLibrary\\xiaoHuangTu.png";//原文件,加密后可删除掉,防止别人查看 char * showOthersPath = "D:\\picLibrary\\xiaoHuangEncode.png";//存放加密的文件,给别人看,别人也看不了的文件 char * newPath = "D:\\picLibrary\\xiaoHuangDecode.png";//将加密的文件解密出来的文件,可以自己偷偷的查看 //加密 myEncodeAnDecode(oriPath, showOthersPath, 100);//密码随便搞个100 //解密 myEncodeAnDecode(showOthersPath, newPath, 100); system("pause"); return 0;}
这就是一个简单的文件夹解密的核心程序。不妨可以自己去试试,将自己的私密照片视频啥的加密。是不是666呢?