#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//读文件
/*int main(){
char *path = "/Users/linyaokui/Downloads/a.txt";
FILE *file = fopen(path, "r");
char buffer[5];
while (fgets(buffer, 5, file)) {
printf("%s",buffer);
}
fclose(file);
return 0;
}*/
//写文件
/*int main(){
char *text = "测试";
char *path = "/Users/linyaokui/Downloads/ab.txt";
FILE *file = fopen(path, "a");
if(file != NULL){
fputs(text, file);
fclose(file);
}
return 0;
}*/
//写二进制文件
/*
int main(){
char *readPath = "/Users/linyaokui/Downloads/timg.jpeg";
char *writePath = "/Users/linyaokui/Downloads/timg_write.jpeg";
FILE *fileRead = fopen(readPath, "rb");
FILE *fileWrite = fopen(writePath,"wb");
char buffer[50];
long len = 0;
while ((len = fread(buffer, sizeof(char), 50, fileRead)) != 0) {
fwrite(buffer, sizeof(char), len, fileWrite);
}
fclose(fileRead);
fclose(fileWrite);
return 0;
}
*/
//读取文件大小
/*
int main(){
char *path = "/Users/linyaokui/Downloads/timg.jpeg";
FILE *file = fopen(path, "r");
fseek(file, 0, SEEK_END);
long size = ftell(file);
fclose(file);
printf("%ld",size);
return 0;
}
*/
/*
void encode(char *normalFilePath,char *encodeFilePath){
FILE *nFile = fopen(normalFilePath, "r");
FILE *eFile = fopen(encodeFilePath, "w");
int ch;
while ((ch = fgetc(nFile)) != EOF) {
fputc(ch^9, eFile);
}
fclose(nFile);
fclose(eFile);
}
void decode(char *ePath,char *dPath){
FILE *eFile = fopen(ePath, "r");
FILE *dFile = fopen(dPath, "w");
int ch;
while ((ch = fgetc(eFile)) != EOF) {
fputc(ch^9, dFile);
}
fclose(eFile);
fclose(dFile);
}
//文本文件加解密
int main(){
char *nPath = "/Users/linyaokui/Downloads/a.txt";
char *ePath = "/Users/linyaokui/Downloads/an.txt";
char *dPath = "/Users/linyaokui/Downloads/ad.txt";
// encode(nPath, ePath);
decode(ePath, dPath);
return 0;
}
*/
//二进制文件加密
/*
void encode_b(char *normalFilePath,char *encodeFilePath ,char *password){
FILE *nFile = fopen(normalFilePath, "rb");
FILE *eFile = fopen(encodeFilePath, "wb");
int ch;
int i = 0;
int pd_lenght = (int)strlen(password);
while ((ch = fgetc(nFile)) != EOF) {
fputc(ch^password[i%pd_lenght], eFile);
i++;
i = i24;
}
fclose(nFile);
fclose(eFile);
}
void decode_b(char *encodeFilePath,char *dcodeFilePath ,char *password){
FILE *eFile = fopen(encodeFilePath, "rb");
FILE *dFile = fopen(dcodeFilePath, "wb");
int ch;
int i = 0;
int pd_lenght = (int)strlen(password);
while ((ch = fgetc(eFile)) != EOF) {
fputc(ch^password[i%pd_lenght], dFile);
i++;
i = i24;
}
fclose(eFile);
fclose(dFile);
}
int main(){
char *password = "iphone";
char *nPath = "/Users/linyaokui/Downloads/timg.jpeg";
char *ePath = "/Users/linyaokui/Downloads/e.jpeg";
char *dPath = "/Users/linyaokui/Downloads/d.jpeg";
// encode_b(nPath, ePath,password);
decode_b(ePath,dPath,password);
return 0;
}
转载请注明原文地址: https://www.6miu.com/read-51745.html