Парился я однажды проблемой склеить около полутысячи файлов. Нашел 2 решения: Через дос и на с++. Но поскольку, интересовался с++, решил писать на нём.
Если через дос, то это делается примерно так
copy 1.txt + 2.txt + 3.txt > out.txt
Сложного ничего, но имена файлов пришлось бы указывать по маске вручную. Поэтому и написал маленький код, возможно, он пригодится кому-нибудь в образовательных или других целях.
#include <conio.h>
#include <dir.h>
#include <stdio.h>int main()
{
struct ffblk ffblk;
int done;
char buf[10];
FILE *f,*out;
out = fopen(«Result.tx#»,»wt»);
printf(«Directory listing………\n»);done = findfirst(«*.txt»,&ffblk,0);
while (!done)
{
printf(«[ %s ] writing…..\n», ffblk.ff_name);
f=fopen(ffblk.ff_name,»rt»);
while(!feof(f))
{
fread(buf,20,1,f);
fwrite(buf,20,1,out);
}
done = findnext(&ffblk);
}
fclose(f);
fclose(out);printf(«Finish writing!!!»);
getch();
return 0;
}
Всё.