std::experimental::filesystem:: path
|
Definiert im Header
<experimental/filesystem>
|
||
|
class
path
;
|
(Filesystem TS) | |
Objekte vom Typ
path
repräsentieren Pfade in einem Dateisystem. Nur syntaktische Aspekte von Pfaden werden behandelt: Der Pfadname kann einen nicht existierenden Pfad darstellen oder sogar einen, der im aktuellen Dateisystem oder Betriebssystem nicht existieren darf.
Der Pfadname hat die folgende Syntax:
- root-name (optional) : identifiziert das Root-Verzeichnis in einem Dateisystem mit mehreren Roots (wie "C:" oder "//myserver" ). POSIX-Dateisysteme haben einen einzelnen Root.
- root-directory (optional) : ein Verzeichnistrennzeichen, das, falls vorhanden, diesen Pfad als absolut kennzeichnet. Wenn es fehlt (und das erste Element außer dem Root-Namen ein Dateiname ist), dann ist der Pfad relativ und benötigt einen anderen Pfad als Ausgangspunkt, um zu einem Dateinamen aufgelöst zu werden.
- Null oder mehr der folgenden Elemente:
-
- file-name : Eine Folge von Zeichen, die keine Verzeichnistrennzeichen oder bevorzugte Verzeichnistrennzeichen sind (zusätzliche Einschränkungen können durch das Betriebssystem oder Dateisystem auferlegt werden). Dieser Name kann eine Datei, einen Hard Link, einen symbolischen Link oder ein Verzeichnis identifizieren. Zwei spezielle file-name s werden erkannt:
-
- dot : Der Dateiname bestehend aus einem einzelnen Punktzeichen . ist ein Verzeichnisname, der auf das aktuelle Verzeichnis verweist.
- dot-dot : Der Dateiname bestehend aus zwei Punktzeichen .. ist ein Verzeichnisname, der auf das übergeordnete Verzeichnis verweist.
-
directory-separator
s: Das Schrägstrich-Zeichen
/
oder das alternative Zeichen, das als
path::preferred_separatorbereitgestellt wird. Wenn dieses Zeichen wiederholt wird, wird es als ein einzelnes Verzeichnistrennzeichen behandelt: / usr ///////lib ist dasselbe wie / usr / lib .
Der Pfad kann elementweise über Iteratoren durchlaufen werden, die von den begin() und end() Funktionen zurückgegeben werden. Diese iterieren über Root-Namen, Root-Verzeichnis und die nachfolgenden Dateinamenelemente (Verzeichnistrennzeichen werden übersprungen, außer demjenigen, der das Root-Verzeichnis identifiziert). Wenn das letzte Element im Pfad ein Verzeichnistrennzeichen ist, wird der letzte Iterator auf einen Dateinamen dot verweisen.
Der Aufruf einer beliebigen nicht-konstanten Memberfunktion eines
path
invalidiert alle Iteratoren, die auf Elemente dieses Objekts verweisen.
Wenn das Betriebssystem eine native Syntax verwendet, die sich von der oben beschriebenen portablen generic Syntax unterscheidet, akzeptieren alle Bibliotheksfunktionen Pfadnamen in beiden Formaten.
Pfade sind implizit konvertierbar zu und von std::basic_string s, was es ermöglicht, sie mit anderen Datei-APIs zu verwenden, z.B. als Argument für std::ifstream::open .
Inhaltsverzeichnis |
Mitgliedertypen
| Typ | Definition |
value_type
|
Zeichentyp, der von der nativen Kodierung des Dateisystems verwendet wird: char auf POSIX, wchar_t auf Windows |
string_type
|
std:: basic_string < value_type > |
const_iterator
|
ein konstanter
LegacyBidirectionalIterator
mit einem
value_type
von
path
|
iterator
|
ein Alias für
const_iterator
|
Member-Konstanten
|
constexpr value_type
preferred_separator
[static]
|
Alternativer Verzeichnisseparator, der zusätzlich zum portablen
/
verwendet werden kann. Unter Windows ist dies der Backslash
\
. Unter POSIX ist dies derselbe Schrägstrich
/
wie der portable Separator
(öffentliche statische Member-Konstante) |
Memberfunktionen
konstruiert einen
path
(öffentliche Elementfunktion) |
|
zerstört ein
path
Objekt
(öffentliche Elementfunktion) |
|
|
weist einen anderen Pfad zu
(öffentliche Elementfunktion) |
|
|
weist Inhalte zu
(öffentliche Elementfunktion) |
|
Verkettung |
|
|
fügt Elemente zum Pfad hinzu
(öffentliche Elementfunktion) |
|
|
verkettet zwei Pfade ohne Einführung eines Verzeichnistrennzeichens
(öffentliche Elementfunktion) |
|
Modifikatoren |
|
|
löscht den Inhalt
(öffentliche Elementfunktion) |
|
|
wandelt Verzeichnistrennzeichen in das bevorzugte Verzeichnistrennzeichen um
(öffentliche Elementfunktion) |
|
|
entfernt den Dateinamen-Pfadbestandteil
(öffentliche Elementfunktion) |
|
|
ersetzt die letzte Pfadkomponente durch einen anderen Pfad
(öffentliche Elementfunktion) |
|
|
ersetzt die Erweiterung
(öffentliche Elementfunktion) |
|
|
tauscht zwei Pfade aus
(öffentliche Elementfunktion) |
|
Format-Beobachter |
|
|
gibt die native Version des Pfades zurück
(öffentliche Member-Funktion) |
|
|
gibt den Pfad im nativen Pfadnamenformat als String zurück
(öffentliche Member-Funktion) |
|
|
gibt den Pfad im generischen Pfadnamenformat als String zurück
(öffentliche Elementfunktion) |
|
Vergleichen |
|
|
vergleicht die lexikalischen Darstellungen zweier Pfade lexikographisch
(öffentliche Elementfunktion) |
|
Zerlegung |
|
|
gibt den Root-Namen des Pfades zurück, falls vorhanden
(öffentliche Elementfunktion) |
|
|
gibt das Wurzelverzeichnis des Pfades zurück, falls vorhanden
(öffentliche Elementfunktion) |
|
|
gibt den Root-Pfad des Pfades zurück, falls vorhanden
(öffentliche Member-Funktion) |
|
|
gibt Pfad relativ zum Wurzelpfad zurück
(öffentliche Elementfunktion) |
|
|
gibt den Pfad des übergeordneten Pfads zurück
(öffentliche Elementfunktion) |
|
|
gibt die Dateinamen-Pfadkomponente zurück
(öffentliche Elementfunktion) |
|
|
gibt die Stammkomponente des Pfades zurück
(öffentliche Elementfunktion) |
|
|
gibt die Dateierweiterungskomponente des Pfades zurück
(öffentliche Memberfunktion) |
|
Abfragen |
|
|
prüft, ob der Pfad leer ist
(öffentliche Elementfunktion) |
|
|
prüft, ob das entsprechende Pfadelement nicht leer ist
(öffentliche Elementfunktion) |
|
|
prüft, ob
root_path()
einen Dateisystemstandort eindeutig identifiziert
(öffentliche Elementfunktion) |
|
Iteratoren |
|
|
Iterator-Zugriff auf den Pfad als Elementesequenz
(öffentliche Elementfunktion) |
|
Nicht-Member-Funktionen
|
tauscht zwei Pfade
(Funktion) |
|
|
vergleicht zwei Pfade lexikographisch
(Funktion) |
|
|
verkettet zwei Pfade mit einem Verzeichnistrennzeichen
(Funktion) |
|
|
führt Strom-Ein- und Ausgabe für einen Pfad durch
(Funktion) |
|
erstellt einen
path
aus einer UTF-8-kodierten Quelle
(Funktion) |