Um alle benötigten Ordner mit fopen zu erstellen

9

Ich verwende fopen("aaa\bbb\ccc\myfile.txt","w") , um eine Ausgabedatei zu erstellen. Aber die Ordner aaa , bbb und ccc existieren nicht. Was ist der beste Weg, um dieses Problem zu lösen? Gibt es eine Standardmethode, fopen zu bitten, alle benötigten Ordner zu erstellen?

    
vico 20.01.2014, 14:28
quelle

2 Antworten

0

Wenn Sie C ++ in Ihrem Programm mischen können, hat die Bibliothek boost.filesystem eine sehr nützliche Funktion um alle Zwischenverzeichnisse zu erstellen.

bool create_directories (const Pfad & amp; p);

    
Tanveer Badar 02.04.2018 02:31
quelle
-3

fopen () wird verwendet, um Eingabestreams für Text- oder Binärdateien und nicht für die Verzeichnisdateien zu öffnen. Wenn Sie Ihre Datei in einem Pfad geöffnet haben möchten, der nicht existierende Verzeichnisse enthält, würde ich vorschlagen, dass Sie die mkdir () -Methode der Headerdatei /sys/stat.h verwenden. Sobald Sie die Verzeichnisse bereit haben, können Sie fopen () verwenden, um die benötigte Datei zu öffnen (oder sie zu erstellen, falls sie nicht bereits vorhanden ist). Dies ist der Ansatz, den ich verwendet habe, um eine Datei in einem Verzeichnis meines $ HOME-Ordners zu erstellen: -

%Vor%     
akhil tiwari 13.03.2017 18:54
quelle

Tags und Links