clamens 님이 쓰신 글 :
: 안녕하세요?
:
: 항상 좋은 답변 감사드립니다.
:
: findfirst(), findnext()등으로 디렉에 있는 파일을 하나하나 열때,
:
: ffblk fb;
:
: findfirst(path, &fb, attr) 이런식으로 쓴다고 하면요,
:
: 그 fb.ff_name에 저장되어있는 파일명의 파일을
:
: 열어서 내용을 읽으려면 어떤 함수를 써야 하나요?
C 방식:
char buf[MAX_BUF];
FILE *in;
if ((in = fopen(fb.ff_name, "rt")) == NULL) {
fprintf(stderr, "Cannot open input file \"%s"\"".\n", ff.ff_name);
return 1;
}
fread(buf, MAX_BUF - 1, 1, in);
C++ 방식:
ifstream fin(fb.ff_name);
if (!fin) {
cerr << "Cannot open input file \"" << ff.ff_name << "\"".\n";
return 1;
}
string filedata((istreambuf_iterator<char>(fin)), istreambuf_iterator<char>());
: 아, 그리고, 제가 그냥 findfirst(), findnext()를 사용하여 검색 프로그램을 만들었는데,
:
: 이상하게 아무것도 아닌 printf("."); 이란 코드를 지우면 오류가 나고,
:
: 넣으면 제대로 잘 돌아가네요. 코드를 지우면 아예 검색을 시작도 안하고요.
:
: win32계열이 아닌 XP라서 그런가요. BCB를 구하진 못해서 BCC 5.5를 다운받아서 쓰고 있는데요.
:
: 답변 부탁드립니다. 감사합니다.
|