다른 이름을 사용하여 여러 번 파일을 복사하려고했습니다.루프를 사용하여 여러 번 파일 복사 중. C/C++
프로그램이있다 : 두 개의 파일 중 하나가 소스이고, 다른 하나는 목적지 스트림있다 이것으로
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include <sstream>
#include<cstring>
using namespace std;
main()
{
string text;
int i;
char ch;
ostringstream oss;
FILE *fp1,*fp2;
if((fp1=fopen("One Dollar.jpg", "rb"))==NULL)
{
cout<<"Error";
exit(-1);
}
for(i=1; i<=5; i++)
{
oss << "C:\\5241 Dollar\\One Dollar " << i << ".jpg";
text = oss.str();
if((fp2=fopen(text.c_str(), "wb"))==NULL)
{
cout<<"Error "<<i;
exit(-1);
}
while(!feof(fp1))
{
fread(&ch, 1, 1, fp1);
fwrite(&ch, 1, 1, fp2);
}
fclose(fp2);
/* for(int j=0;j<30000;j++)
for(int k=0;k<30000;k++)
if(k==3000)
cout<<k; */
}
fclose(fp1);
}
.. I 이진 판독 모드에서 실제 파일 및 이진 쓰면 목적지 로케이션 방법. 나는 for 루프를 사용하여 작업을 수행했다. 그러나 루프가 두 번째로 반복되면 fp2의 파일 열기가 실패합니다. 출력이 나옵니다. 오류 2
어떻게 코드를 작동시킬 수 있습니까?
오류가 무엇입니까? – Mark
사실 그것은 오류가 아닙니다. 즉, 컴파일러가 오류를 표시하지 않습니다. 나쁜. 아마도 버그 일 겁니다 ... 두 번째로 출력이 나옵니다. 오류 2 if this : if ((fp2 = fopen (text.c_str(), "wb")) == NULL) – ponir
@ user817824 내 응답을 업데이트했습니다. –