• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

ilość plików w folderze w c++

VPS Starter Arubacloud
0 głosów
688 wizyt
pytanie zadane 15 stycznia 2018 w C i C++ przez Artur313 Użytkownik (790 p.)
witam mam pytanie czy istnieje możliwość zliczenia ilości plików w folderze po to aby móc przekazać ją do innej funkcji ??

2 odpowiedzi

+1 głos
odpowiedź 15 stycznia 2018 przez niezalogowany

W C++17 doszedł moduł filesystem. Więc jeżeli używasz kompilatora zgodnego z najnowszym standardem możesz zrobić tak:

#include <iostream>
#include <filesystem>

namespace fs = std::filesystem;

std::size_t number_of_files_in_directory(fs::path path)
{
	return (std::size_t) std::distance(fs::directory_iterator{ path }, fs::directory_iterator{});
}

int main()
{
	std::cout << number_of_files_in_directory(fs::path("C:\\Users\\Przemek\\Desktop")) << "\n";
}

W przypadku VS2017:

#include <iostream>
#include <experimental/filesystem>

namespace fs = std::experimental::filesystem;

std::size_t number_of_files_in_directory(fs::path path)
{
	return (std::size_t) std::distance(fs::directory_iterator{ path }, fs::directory_iterator{});
}

int main()
{
	std::cout << number_of_files_in_directory(fs::path("C:\\Users\\Przemek\\Desktop")) << "\n";
}

Inne ścieżki to pobranie osobnego filesystem, albo całego boost'a. Zostaje Ci też korzystanie z WINAPI, lub alternatywy dla środowisk UNIX.

komentarz 15 stycznia 2018 przez Arkadiusz Sikorski Pasjonat (20,160 p.)
Czy któraś wersja GCC obsługuje filesystem?

Bo MinGW 6.3 pod Windowsem niestety nie :<
1
komentarz 15 stycznia 2018 przez niezalogowany

Oczywiście ;) Możesz pobrać najnowsze GCC 7.2.0. Tu masz link skąd pobrać, jak podpiąć je do Code::Blocks, aby np filesystem działał ;)

0 głosów
odpowiedź 15 stycznia 2018 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Podobne pytania

0 głosów
2 odpowiedzi 479 wizyt
pytanie zadane 19 lutego 2017 w PHP przez TheBan Obywatel (1,400 p.)
0 głosów
0 odpowiedzi 328 wizyt
pytanie zadane 1 lipca 2019 w C i C++ przez Tomasz Kolk Użytkownik (750 p.)
0 głosów
1 odpowiedź 184 wizyt

92,455 zapytań

141,263 odpowiedzi

319,099 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...