char CmdLine[50] = "";
char path[512] = "";
char filename[20] = "";
int Flag = 1;
#ifdef _FOR_WINDOWS_
HANDLE hSrc;
WIN32_FIND_DATA wfd;
sprintf(path, "C:\\project\\ocr\\images\\*.jpg");
// 해당폴더의 첫번째 파일을 wfd에 넣는다
hSrc = FindFirstFile(path, &wfd);
if (hSrc == INVALID_HANDLE_VALUE)
{
fprintf(stderr, "Can't Find %s.\n", path);
Flag = 0;
}
while(Flag)
{
sprintf(filename, "%s", wfd.cFileName);
// wfd의 다음 파일로 넘어 간다.
Flag = FindNextFile(hSrc, &wfd);
}
// 파일 핸들 닫기
FindClose(hSrc);
#endif
#ifdef _FOR_LINUX_
// 디렉토리 포인터
DIR* dp = NULL;
struct dirent* entry = NULL;
struct stat buf;
sprintf(path, "./Result");
// 디렉토리 열기
if ( (dp = opendir(path)) == NULL)
{
Flag = 0;
}
while (Flag)
{
entry = readdir(dp);
if (entry == NULL)
{
Flag = 0;
}
else
{
// 파일이름을 알려주어 자세한정보를 buf 에 저장
lstat(entry->d_name, &buf);
// 파일이 디렉토리인가?
if (S_ISDIR(buf.st_mode))
{
fprintf(stderr, "%s is Directory.\n", entry->d_name);
}
// 파일이 파일인가?
else if (S_ISREG(buf.st_mode))
{
fprintf(stderr, "%s is File.\n", entry->d_name);
sprintf(CmdLine, "echo %s >> Result.txt", entry->d_name);
fprintf(stderr, CmdLine);
system(CmdLine);
}
}
}
// 디렉토리 닫기
closedir(dp);
#endif
comments:
댓글 쓰기