Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Beschrijft een object dat wordt geretourneerd door het uitstellen van een directory_iterator of een recursive_directory_iterator. Een directory_entry verpakt een path en, als optimalisatie, kan bestandskenmerken opslaan die worden verkregen tijdens het herhalen van een map.
Syntaxis
class directory_entry;
Opmerkingen
Een directory_entry object slaat een path. Als optimalisatie kan het ook de kenmerken en status van het bestand waarnaar het pad verwijst, in de cache opslaan. De gegevens in de cache worden ingevuld wanneer de vermelding wordt gemaakt door een directory-iterator of wanneer u aanroept refresh. Waarnemers zoals file_size, last_write_time, statusen de verschillende is_* predicaten retourneren de gegevens in de cache wanneer deze beschikbaar zijn; anders voeren ze een query uit op het bestandssysteem.
Zie Bestandssysteemnavigatie (C++) voor meer informatie en codevoorbeelden.
Constructors
| Constructeur | Beschrijving |
|---|---|
directory_entry |
Maakt een directory_entry. |
Functies voor leden
| Lid, functie | Beschrijving |
|---|---|
assign |
Vervangt het opgeslagen pad en vernieuwt de kenmerken in de cache. |
exists |
Controleert of de vermelding verwijst naar een bestaand bestand. |
file_size |
Hiermee wordt de grootte, in bytes, van het bestand waarnaar wordt verwezen, opgehaald. |
hard_link_count |
Hiermee haalt u het aantal vaste koppelingen naar het bestand waarnaar wordt verwezen op. |
is_block_file |
Controleert of het bestand waarnaar wordt verwezen een speciaal blokbestand is. |
is_character_file |
Controleert of het bestand waarnaar wordt verwezen een speciaal tekenbestand is. |
is_directory |
Controleert of het bestand waarnaar wordt verwezen een map is. |
is_fifo |
Controleert of het bestand waarnaar wordt verwezen een benoemde pipe (FIFO) is. |
is_other |
Controleert of het bestand waarnaar wordt verwezen een ander bestand is. |
is_regular_file |
Controleert of het bestand waarnaar wordt verwezen een gewoon bestand is. |
is_socket |
Controleert of het bestand waarnaar wordt verwezen een socket is. |
is_symlink |
Controleert of het bestand waarnaar wordt verwezen een symbolische koppeling is. |
last_write_time |
Hiermee haalt u de tijd op van de laatste wijziging van de gegevens van het bestand waarnaar wordt verwezen. |
path |
Retourneert het opgeslagen pad. |
refresh |
Hiermee worden de bestandskenmerken in de cache vernieuwd. |
replace_filename |
Vervangt de bestandsnaam van het opgeslagen pad en vernieuwt de kenmerken in de cache. |
status |
Hiermee wordt de status van het bestand waarnaar wordt verwezen, opgehaald met behulp van symbolische koppelingen. |
symlink_status |
Hiermee wordt de status van het bestand waarnaar wordt verwezen, opgehaald zonder symbolische koppelingen te volgen. |
Bedieners
| Operator | Beschrijving |
|---|---|
operator= |
Wordt toegewezen aan de directory_entry. |
operator const path& |
Retourneert het opgeslagen pad. |
operator== |
Hiermee wordt gecontroleerd of twee directory_entry objecten gelijk zijn. |
operator<=> |
Voert een vergelijking in drie richtingen uit van twee directory_entry objecten. (C++20) |
operator!= |
Controleert of twee directory_entry objecten ongelijk zijn. Een expliciet lid in C++17; ondersteund door herschreven vergelijkingen in C++20 en hoger. |
operator< |
Controleert of de directory_entry sorteringen vóór een andere directory_entryworden uitgevoerd. Een expliciet lid in C++17; ondersteund door herschreven vergelijkingen in C++20 en hoger. |
operator<= |
Hiermee wordt gecontroleerd of de directory_entry sorteringen vóór of gelijk zijn aan een andere directory_entry. Een expliciet lid in C++17; ondersteund door herschreven vergelijkingen in C++20 en hoger. |
operator> |
Controleert of de directory_entry sorteringen na een andere directory_entryworden uitgevoerd. Een expliciet lid in C++17; ondersteund door herschreven vergelijkingen in C++20 en hoger. |
operator>= |
Hiermee wordt gecontroleerd of de directory_entry sorteringen na of gelijk zijn aan een andere directory_entry. Een expliciet lid in C++17; ondersteund door herschreven vergelijkingen in C++20 en hoger. |
Requirements
Rubriek:<filesystem>
Naamruimte:std::filesystem
directory_entry
Maakt een directory_entry.
directory_entry() noexcept = default;
directory_entry(const directory_entry&) = default;
directory_entry(directory_entry&&) noexcept = default;
explicit directory_entry(const std::filesystem::path& p);
directory_entry(const std::filesystem::path& p, std::error_code& ec);
~directory_entry();
Parameters
p
Het pad naar het bestand waarnaar de vermelding verwijst.
ec
De uitvoerfoutcode voor de bewerking.
Opmerkingen
De standaardconstructors voor kopiëren en verplaatsen gedragen zich zoals verwacht. De constructors die een path archief p nemen en vervolgens aanroepen refresh om de kenmerken in de cache te vullen. De overbelasting die een error_code rapportfout maakt in ec in plaats van te gooien, en wist het opgeslagen pad als de vernieuwing mislukt.
operator=
Wordt toegewezen aan de directory_entry.
directory_entry& operator=(const directory_entry&) = default;
directory_entry& operator=(directory_entry&&) noexcept = default;
Parameters
rechts
De directory_entry te kopiëren of naar deze directory_entryte verplaatsen .
Opmerkingen
De standaardtoewijzingsoperatoren gedragen zich zoals verwacht.
assign
Vervangt het opgeslagen pad en vernieuwt de kenmerken in de cache.
void assign(const std::filesystem::path& p);
void assign(const std::filesystem::path& p, std::error_code& ec);
Parameters
p
Het nieuwe pad om op te slaan.
ec
De uitvoerfoutcode voor de bewerking.
Opmerkingen
Vervangt het opgeslagen pad door p en roept refresh vervolgens aan om de kenmerken in de cache bij te werken. De overbelasting die een error_code rapportfout in ec neemt in plaats van te gooien.
replace_filename
Vervangt de bestandsnaam van het opgeslagen pad en vernieuwt de kenmerken in de cache.
void replace_filename(const std::filesystem::path& p);
void replace_filename(const std::filesystem::path& p, std::error_code& ec);
Parameters
p
De vervangende bestandsnaam.
ec
De uitvoerfoutcode voor de bewerking.
Opmerkingen
Vervangt het bestandsbestandsonderdeel van het opgeslagen pad door p, alsof door path().replace_filename(p), roept vervolgens refreshaan. De overbelasting die een error_code rapportfout in ec neemt in plaats van te gooien.
vernieuwen
Hiermee worden de bestandskenmerken in de cache vernieuwd.
void refresh();
void refresh(std::error_code& ec) noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Opmerkingen
Leest de kenmerken van het bestand waarnaar het opgeslagen pad verwijst en slaat deze in de directory_entrycache op. Aanroep refresh om de gegevens in de cache bij te werken nadat het bestand waarnaar wordt verwezen, is gewijzigd. De overbelasting die een error_code rapportfout in ec neemt in plaats van te gooien.
path
Retourneert het opgeslagen pad.
const std::filesystem::path& path() const noexcept;
operator const path&
Retourneert het opgeslagen pad.
operator const std::filesystem::path&() const noexcept;
bestaat
Controleert of de vermelding verwijst naar een bestaand bestand.
bool exists() const;
bool exists(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het opgeslagen pad verwijst naar een bestaand bestand; anders, false. Equivalent aan aanroepen filesystem::exists(status()).
is_block_file
Controleert of het bestand waarnaar wordt verwezen een speciaal blokbestand is.
bool is_block_file() const;
bool is_block_file(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het bestand waarnaar wordt verwezen een speciaal blokbestand is; anders, false. Deze functie retourneert false altijd Windows.
is_character_file
Controleert of het bestand waarnaar wordt verwezen een speciaal tekenbestand is.
bool is_character_file() const;
bool is_character_file(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het bestand waarnaar wordt verwezen een speciaal tekenbestand is; anders, false. Deze functie retourneert false altijd Windows.
is_directory
Controleert of het bestand waarnaar wordt verwezen een map is.
bool is_directory() const;
bool is_directory(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het bestand waarnaar wordt verwezen een map is; anders, false. Equivalent aan aanroepen filesystem::is_directory(status()).
is_fifo
Controleert of het bestand waarnaar wordt verwezen een benoemde pipe (FIFO) is.
bool is_fifo() const;
bool is_fifo(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het bestand waarnaar wordt verwezen een FIFO is; anders, false. Deze functie retourneert false altijd Windows.
is_other
Controleert of het bestand waarnaar wordt verwezen een ander bestand is.
bool is_other() const;
bool is_other(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het bestand waarnaar wordt verwezen bestaat, maar geen gewone bestands-, map- of symbolische koppeling is; anders, false. Equivalent aan aanroepen filesystem::is_other(status()).
is_regular_file
Controleert of het bestand waarnaar wordt verwezen een gewoon bestand is.
bool is_regular_file() const;
bool is_regular_file(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het bestand waarnaar wordt verwezen een normaal bestand is; anders, false. Equivalent aan aanroepen filesystem::is_regular_file(status()).
is_socket
Controleert of het bestand waarnaar wordt verwezen een socket is.
bool is_socket() const;
bool is_socket(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het bestand waarnaar wordt verwezen een socket is; anders, false. Deze functie retourneert false altijd Windows.
is_symlink
Controleert of het bestand waarnaar wordt verwezen een symbolische koppeling is.
bool is_symlink() const;
bool is_symlink(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
true als het bestand waarnaar wordt verwezen een symbolische koppeling is; anders, false. Equivalent aan aanroepen filesystem::is_symlink(symlink_status()).
bestandsgrootte
Hiermee wordt de grootte, in bytes, van het bestand waarnaar wordt verwezen, opgehaald.
uintmax_t file_size() const;
uintmax_t file_size(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
De grootte, in bytes, van het bestand waarnaar wordt verwezen, alsof door filesystem::file_size(path()). Gebruikt gegevens in de cache wanneer deze beschikbaar zijn.
hard_link_count
Hiermee haalt u het aantal vaste koppelingen naar het bestand waarnaar wordt verwezen op.
uintmax_t hard_link_count() const;
uintmax_t hard_link_count(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
Het aantal vaste koppelingen naar het bestand waarnaar wordt verwezen, alsof door filesystem::hard_link_count(path()). Gebruikt gegevens in de cache wanneer deze beschikbaar zijn.
last_write_time
Hiermee haalt u de tijd op van de laatste wijziging van de gegevens van het bestand waarnaar wordt verwezen.
file_time_type last_write_time() const;
file_time_type last_write_time(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
De tijd van de laatste wijziging van de gegevens van het bestand waarnaar wordt verwezen, alsof door filesystem::last_write_time(path()). Gebruikt gegevens in de cache wanneer deze beschikbaar zijn.
status
Hiermee wordt de status van het bestand waarnaar wordt verwezen, opgehaald met behulp van symbolische koppelingen.
file_status status() const;
file_status status(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
De status van het bestand waarnaar wordt verwezen, alsof door filesystem::status(path()). Gebruikt gegevens in de cache wanneer deze beschikbaar zijn.
symlink_status
Hiermee wordt de status van het bestand waarnaar wordt verwezen, opgehaald zonder symbolische koppelingen te volgen.
file_status symlink_status() const;
file_status symlink_status(std::error_code& ec) const noexcept;
Parameters
ec
De uitvoerfoutcode voor de bewerking.
Retourwaarde
De symlinkstatus van het bestand waarnaar wordt verwezen, alsof door filesystem::symlink_status(path()). Gebruikt gegevens in de cache wanneer deze beschikbaar zijn.
operator==
Hiermee wordt gecontroleerd of twee directory_entry objecten gelijk zijn.
bool operator==(const directory_entry& right) const noexcept;
Parameters
rechts
De directory_entry te vergelijken met.
Retourwaarde
Retourneert path() == right.path().
operator<=>
Voert een vergelijking in drie richtingen uit van twee directory_entry objecten.
std::strong_ordering operator<=>(const directory_entry& right) const noexcept; // C++20
Parameters
rechts
De directory_entry te vergelijken met.
Retourwaarde
Retourneert path() <=> right.path().
Opmerkingen
Beschikbaar in C++20 en hoger. De compiler herschrijft vergelijkingen die gebruikmaken operator<van, operator<=of operator>operator>= om deze operator te gebruiken. Hiermee worden vergelijkingen herschreven die worden gebruikt operator!= om te gebruiken operator==.
operator!=
Controleert of twee directory_entry objecten ongelijk zijn.
bool operator!=(const directory_entry& right) const noexcept; // C++17
Parameters
rechts
De directory_entry te vergelijken met.
Retourwaarde
Retourneert !(*this == right).
Opmerkingen
In C++17 is deze operator een expliciet gedeclareerde lidfunctie. In C++20 en hoger wordt een expressie die wordt gebruikt operator!= , herschreven voor gebruik operator==.
operator<
Controleert of de directory_entry sorteringen vóór een andere directory_entryworden uitgevoerd.
bool operator<(const directory_entry& right) const noexcept; // C++17
Parameters
rechts
De directory_entry te vergelijken met.
Retourwaarde
Retourneert path() < right.path().
Opmerkingen
In C++17 is deze operator een expliciet gedeclareerde lidfunctie. In C++20 en hoger wordt een expressie die wordt gebruikt operator< , herschreven voor gebruik operator<=>.
operator<=
Hiermee wordt gecontroleerd of de directory_entry sorteringen vóór of gelijk zijn aan een andere directory_entry.
bool operator<=(const directory_entry& right) const noexcept; // C++17
Parameters
rechts
De directory_entry te vergelijken met.
Retourwaarde
Retourneert !(right < *this).
Opmerkingen
In C++17 is deze operator een expliciet gedeclareerde lidfunctie. In C++20 en hoger wordt een expressie die wordt gebruikt operator<= , herschreven voor gebruik operator<=>.
operator>
Controleert of de directory_entry sorteringen na een andere directory_entryworden uitgevoerd.
bool operator>(const directory_entry& right) const noexcept; // C++17
Parameters
rechts
De directory_entry te vergelijken met.
Retourwaarde
Retourneert right < *this.
Opmerkingen
In C++17 is deze operator een expliciet gedeclareerde lidfunctie. In C++20 en hoger wordt een expressie die wordt gebruikt operator> , herschreven voor gebruik operator<=>.
operator>=
Hiermee wordt gecontroleerd of de directory_entry sorteringen na of gelijk zijn aan een andere directory_entry.
bool operator>=(const directory_entry& right) const noexcept; // C++17
Parameters
rechts
De directory_entry te vergelijken met.
Retourwaarde
Retourneert !(*this < right).
Opmerkingen
In C++17 is deze operator een expliciet gedeclareerde lidfunctie. In C++20 en hoger wordt een expressie die wordt gebruikt operator>= , herschreven voor gebruik operator<=>.
Zie ook
headerbestanden
<filesystem>
Bestandssysteemnavigatie (C++)