반응형
테스트 환경
Windows10 / C++ / Qt 5.15.2 / Qt Creator 4.13.3
파일/폴더 개수 출력
폴더 내 파일 개수 출력
#include <QDirIterator>
#include <QDebug>
int fileNumber = 0;
QDirIterator it("D:/", QDir::Files); // 대상 폴더, 옵션(파일만 출력)
while (it.hasNext())
{
if(it.next() > 0 )
{
fileNumber++;
}
}
qDebug() << fileNumber;
폴더 내 폴더 개수 출력
위 코드에서 QDirIterator의 옵션인 QDir::Files를 QDir::AllDirs로 수정한다.
#include <QDirIterator>
#include <QDebug>
int fileNumber = 0;
QDirIterator it("D:/", QDir::Alldirs); // 대상 폴더, 옵션(폴더만 출력)
while (it.hasNext())
{
if(it.next() > 0 )
{
fileNumber++;
}
}
qDebug() << fileNumber;
폴더와 파일 개수를 출력하고 싶다면 QDir::Files를 QDir::AllEntries로 수정한다.
하위 폴더 포함 개수 출력
위 코드에서 QDirIterator::Subdirectories 옵션을 추가한다.
int fileNumber = 0;
QDirIterator it("D:/", QDir::Files, QDirIterator::Subdirectories);
while (it.hasNext())
{
if(it.next() > 0 )
{
fileNumber++;
}
}
qDebug() << fileNumber;
참고
https://stackoverflow.com/questions/6890757/counting-file-in-a-directory
최근댓글