Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C/C++를 사용하여 디렉토리의 파일 목록을 어떻게 얻을 수 있습니까?

<시간/>

표준 C++는 이를 수행하는 방법을 제공하지 않습니다. 시스템 명령을 사용하여 다음과 같이 ls 명령을 초기화할 수 있습니다 -

예시

#includeint main() { char 명령[50] ="ls -l"; 시스템(명령); 반환 0;}

출력

이것은 출력을 줄 것입니다 -

-rwxrwxrwx 1 루트 루트 9728 2월 25일 20:51 a.out-rwxrwxrwx 1 루트 루트 131 2월 25일 20:44 root hello.cpp-rwxrwxrwx 1 루트 루트 243 9월 7일 13:09 hello  

Windows를 사용하는 경우 ls 대신 dir을 사용하여 목록을 표시할 수 있습니다.

예시

다이렉트 패키지(https://github.com/tronkko/dirent)를 사용하여 훨씬 더 유연한 API를 사용할 수 있습니다. 다음과 같이 사용하여 파일 목록을 얻을 수 있습니다 -

#include #include #include 네임스페이스 사용 std;void list_dir(const char *path) { struct dirent *entry; 디렉토리 *dir =opendir(경로); if (dir ==NULL) { 반환; } while ((entry =readdir(dir)) !=NULL) { cout <d_name < 

출력

이것은 출력을 줄 것입니다 -

a.outhello.cpphello.pyhello.ohydeoutmy_file.txtwatch.py