У меня есть два входа: video1.y
и video2.y
. Я хочу объединить эти два файла, чтобы создать один файл video.y
? Я пишу код в C. Это может быть основной вопрос, но не в состоянии сделать это !! Оба входа имеют такую же высоту и ширину. Код:Соединить два входа .y
int main()
{
// Open two files to be merged
FILE *fp1 = fopen("D:\\dump\\video1.y", "rb");
FILE *fp2 = fopen("D:\\dump\\video2.y", "rb");
// Open file to store the result
FILE *fp3 = fopen("D:\\dump\\video.y", "wb");
char c; //Change char to int as per answer given by user3710044..
//...Which is working !!
if (fp1 == NULL || fp2 == NULL || fp3 == NULL)
{
puts("Could not open files");
exit(0);
}
// Copy contents of first file to video3.y
while ((c = fgetc(fp1)) != EOF)
fputc(c, fp3);
// Copy contents of second file to video3.y
while ((c = fgetc(fp2)) != EOF)
fputc(c, fp3);
printf("Merged video1.y and video2.y into video.y");
fclose(fp1);
fclose(fp2);
fclose(fp3);
return 0;
}
video1.y и video2.y имеют 55 МБ .И мой выход 3 KB.I я не в состоянии объединить эти два входа
У меня есть вопрос. – user3476225
Если вы просто хотите объединить два входа, используйте команду dos для добавления двоичных файлов, используйте команду COPY с помощью переключателя/b. Синтаксис выглядит следующим образом: 'скопировать/б + /б [....] ' -или- 'копировать/б + [....] ' –
Ashwin
Спасибо Ashwin за ваш ответ Моя цель состоит в том, чтобы просто объединить два входа. Я написал программу c тем же, что имеет некоторую логическую ошибку, так что я не могу объединить эти входы в выходное видео. Ответ на ваш вопрос мне очень помог. Спасибо – user3476225