C语言也可以写脚本
下面有一个关于批量文件处理的程序:把n个命名有规律的图片文件复制到指定目录大概思路是,创建一个缓冲区,把文件放入缓冲区,再输出到指定目录,循环进行#include<iostream>using namespace std;char A[10];//文件名char B[20]="d:\\";//指定路径void getstring(int i){...
·
下面有一个关于批量文件处理的程序:
把n个命名有规律的图片文件复制到指定目录
大概思路是,创建一个缓冲区,把文件放入缓冲区,再输出到指定目录,循环进行
#include<iostream>
using namespace std;
char A[10]; //文件名
char B[20]="d:\\"; //指定路径
void getstring(int i)
{
int p=0;
while(i) //文件名
{
A[p]=i%10+48;
i/=10;
p++;
}
A[p]='.'; //后缀
A[p+1]='p';
A[p+2]='n';
A[p+3]='g';
A[p+4]='\0';
}
void tostring()
{
int flag_a=0;
int flag_b=3;
while(A[flag_a]!='\0')
{
B[flag_b]=A[flag_a];
flag_a++;
flag_b++;
}
B[flag_b]='\0';
}
int main()
{
int x=1;
char* buffer;
int size,temp=0;
getstring(x);
FILE *fp1=fopen(A,"rb");
while(fp1!=NULL) //终止条件
{
fseek(fp1,0,SEEK_END);
size=ftell(fp1);
buffer=(char*)malloc(sizeof(char)*size);
if(size>temp) //不盲目释放!!!!!!!!!!!!!!!!!!!
{
free(buffer); //记得free哦~
buffer=(char*)malloc(sizeof(char)*size);
temp=size;
}
fclose(fp1);
fp1=fopen(A,"rb"); //注意用二进制模式打开
fread(buffer,1,size,fp1);
tostring();
FILE *fp=fopen(B,"wb");
fwrite(buffer,1,size,fp);
fclose(fp);
fclose(fp1);
x++;
getstring(x);
fp1=fopen(A,"rb");
}
return 0;
}
除了批量复制——当然也可以批量删除,同上,再调对应函数remove()就行了
注意:这里的删除回收站里是找不到的!
所以,一些来源不明的文件真的不要瞎打开,不然后果很严重!!

更多推荐
所有评论(0)