//
// Created by MagicBook on 2023-10-22.
//
#include
#include
#include
#include
int main() {
//文件路径,r,w,rb,rw
//返回值结构体
char *fileName = "C:\\Users\\MagicBook\\Desktop\\tv.txt";
//读的权限,文件必须存在
FILE *file = fopen(fileName, "r");
if (!file) {
//退出程序
exit(0);
}
//定义缓存
char buffer[10];
//
while (fgets(buffer, 10, file)) {
}
fclose(file);
return 0;
}
//
// Created by MagicBook on 2023-10-22.
//
#include
#include
#include
#include
int main() {
//文件路径,r,w,rb,rw
//返回值结构体
char *fileName = "C:\\Users\\MagicBook\\Desktop\\tvv.txt";
//写的权限,会自动生成文件
FILE *file = fopen(fileName, "w");
if (!file) {
//退出程序
exit(0);
}
fputs("sdsadds", file);
fclose(file);
return 0;
}
//
// Created by MagicBook on 2023-10-22.
//
#include
#include
#include
#include
//二进制文件来操作rb,rw,
int main() {
//文件路径,r,w,rb,rw
//返回值结构体
char *fileName = "C:\\Users\\MagicBook\\Desktop\\tv.txt";
//目标
char *fileNameCopy = "C:\\Users\\MagicBook\\Desktop\\tvv.txt";
//读取二进制数据
FILE *file1 = fopen(fileName, "rb");
//写入二进制数据
FILE *file2 = fopen(fileName, "rw");
if (!file1 || !file2) {
exit(0);
}
//412 * 4
int buffer[512];
//每次接收的长度
int len;
//容器buffer,每次偏移多少,容器大小,
while ((len = fread(buffer, sizeof(int), sizeof(buffer) / sizeof(int), file1) != 0)) {
fwrite(buffer, sizeof(int), len, fileNameCopy);
}
fclose(file1);
fclose(file2);
return 0;
}
//
// Created by MagicBook on 2023-10-22.
//
#include
#include
#include
#include
//二进制文件来操作rb,rw,
int main() {
//读取头指针,指针移动,移动到末尾,求得文件的大小
//文件路径,r,w,rb,rw
//返回值结构体
char *fileName = "C:\\Users\\MagicBook\\Desktop\\tv.txt";
//读取二进制数据
FILE *file1 = fopen(fileName, "rb");
//写入二进制数据
FILE *file2 = fopen(fileName, "rw");
if (!file1 || !file2) {
exit(0);
}
//移动指针
fseek(file1, 0, SEEK_END);
//读取信息,字节大小
long size = ftell(file1);
fclose(file1);
fclose(file2);
return 0;
}
加密
//
// Created by MagicBook on 2023-10-22.
//
#include
#include
#include
#include
//二进制文件来操作rb,rw,
int main() {
//读取头指针,指针移动,移动到末尾,求得文件的大小
//文件路径,r,w,rb,rw
//返回值结构体
char *fileName = "C:\\Users\\MagicBook\\Desktop\\test.png";
//加密
char *fileNameEncode = "C:\\Users\\MagicBook\\Desktop\\test_encode.png";
//读取二进制数据
FILE *file1 = fopen(fileName, "rb");
//写入二进制数据
FILE *file2 = fopen(fileNameEncode, "rw");
if (!file1 || !file2) {
exit(0);
}
//加密:破坏二进制文件
//解密:还原文件
//接收读取的值
int c;
//返回值EOF
while ((c == fgetc(file1) != EOF)) {
fputc(c^5,file2);
}
fclose(file1);
fclose(file2);
return 0;
}
解密
//
// Created by MagicBook on 2023-10-22.
//
#include
#include
#include
#include
//二进制文件来操作rb,rw,
int main() {
//读取头指针,指针移动,移动到末尾,求得文件的大小
//文件路径,r,w,rb,rw
//返回值结构体
char *fileName = "C:\\Users\\MagicBook\\Desktop\\test.png";
//加密
char *fileNameEncode = "C:\\Users\\MagicBook\\Desktop\\test_encode.png";
//密钥
char *password = "123456";
//读取二进制数据
FILE *file1 = fopen(fileName, "rb");
//写入二进制数据
FILE *file2 = fopen(fileNameEncode, "rw");
if (!file1 || !file2) {
exit(0);
}
//加密:破坏二进制文件
//解密:还原文件
//接收读取的值
int c;
int index = 0;
int len = strlen(password);
//返回值EOF
while ((c == fgetc(file1)) != EOF) {
char item = password[index % len];
fputc(c ^ item, file2);
index++;
}
fclose(file1);
fclose(file2);
return 0;
}