文件复制
// 有三种方式
// 如果换成 "rb","wb",可以读取和写入二进制文件(类似视频文件)
int main(char argc, char* argv) {
char filename[] = "E:\\gx\\gm\\test.txt";
char filename2[] = "E:\\gx\\gm\\test2.txt";
FILE* file = fopen(filename, "r");
if (file == NULL) {
printf("无法打开文件");
return 1;
}
FILE* file2 = fopen(filename2, "w");
char line[256];
// fgets 不适合复制二进制文件
while (fgets(line, sizeof(line), file) != NULL) {
fputs(line, file2);
}
//while (!feof(file)) {
// size_t count = fread(line, sizeof(char), sizeof(line), file);
// fwrite(line, sizeof(char), count, file2);
//}
//int ch;
//while ((ch = fgetc(file)) != EOF) {
// fputc(ch, file2);
//}
fclose(file);
fclose(file2);
return 0;
}
控制游标
int main(char argc,char* argv){
FILE* file = fopen(filename2, "r");
//rewind(file); // 将游标放到文件开头
//fseek(file,0,SEEK_SET); // 也是将游标放到开头
//fseek(file,0,SEEK_END); //将游标放到结尾,一般结合ftell(file)获取文件大小。
//ftell函数获取当前文件指针的位置(根据字节)
}
删除文件
int main(char argc, char* argv) {
char filename[] = "E:\\gx\\gm\\12.mp4";
remove(filename); // 删除文件
return 0;
}
移动文件(重命名文件)
int main(char argc, char* argv) {
char filename[] = "E:\\gx\\gm\\11.mp4";
char filename2[] = "E:\\gx\\gm\\12.mp4";
if (rename(filename, filename2) == 0) {
// 返回值0,表示成功
printf("成功");
}
else {
printf("失败");
}
return 0;
}