Jump to content
Che

[C++][AJUTOR] Creezi un subdirector daca acesta nu exista ?

Recommended Posts

Posted

Vreau sa creez un fisier intr-un subdirector. Daca subdirectorul nu exista atunci acesta sa fie creat.

Eu am facut asa:

if (myfile.is_open())

{

ofstream secondfile;

secondfile.open("new/second.txt");

//... some code;

}

Nu merge. Eu credeam ca daca fisierul nu este, il creeaza. Daca directorul nu este, iarasi il creaza. Se pare ca nu este asa.

Programul de mai sus creeaza fisierul DOAR daca exista directorul deja creat, altfel nu se intampla nimic.

Cum sa fac sa fie in felul urmator: daca directorul si/sau subdirectorul nu exista atunci sa-l/sa le creeze si apoi sa faca si fisierul ?

Multumesc !

PS: Stiu ca intreabarea pare simplu dar nu am reusit sa gasesc pe net. Eu credeam ca problema e la cum denumesti calea catre fisier si am incercat si cu dir/fisier.txt si /dir/fisier.txt si \dir\fisier.txt si \\dir\\fisier.txt s.a.m.d. Dupa ce am incercat toate combinatiile posibile am ajuns la concluzia ca functia e de vina. :))

Posted
Vreau sa creez un fisier intr-un subdirector. Daca subdirectorul nu exista atunci acesta sa fie creat.

Eu am facut asa:

if (myfile.is_open())

{

ofstream secondfile;

secondfile.open("new/second.txt");

//... some code;

}

Nu merge. Eu credeam ca daca fisierul nu este, il creeaza. Daca directorul nu este, iarasi il creaza. Se pare ca nu este asa.

Programul de mai sus creeaza fisierul DOAR daca exista directorul deja creat, altfel nu se intampla nimic.

Cum sa fac sa fie in felul urmator: daca directorul si/sau subdirectorul nu exista atunci sa-l/sa le creeze si apoi sa faca si fisierul ?

Multumesc !

PS: Stiu ca intreabarea pare simplu dar nu am reusit sa gasesc pe net. Eu credeam ca problema e la cum denumesti calea catre fisier si am incercat si cu dir/fisier.txt si /dir/fisier.txt si \dir\fisier.txt si \\dir\\fisier.txt s.a.m.d. Dupa ce am incercat toate combinatiile posibile am ajuns la concluzia ca functia e de vina. :))

Chiar ai c?utat pe net?

Primul link g?sit a fost ?sta: c++ - Create a Directory if it doesn't exist - Stack Overflow ?i ghici ce...

Posted (edited)

#include <QFile>

Pentru a verifica daca directorul exista::

QDir("Folder").exists();

Pentru a creea un director:

QDir().mkdir("MyFolder");

Edited by wikedx
Posted

Ai mai multe optiuni : folosesti o librarie cross platform ca QT / boost , folosesti libraria nativa ( cod mult in C si merge doar pe OS-ul respectiv ) sau cea mai simpla : system("mkdir new")

Posted

@H3xoR

Am cautat dar nu stiu cum de nu am dat de linkul ala.

Nu vreau sa folosesc functii gen mkdir sau librarii sau vreun framework. Vroiam sa fac totul mult mai simplu, fara vreo functie speciala. Peste mkdir am dat si eu dar am zis ca poate e ceva mai simplu, poate ceva de genul ofstream file("myfile.txt" |MAKE_DIR_IF_NOT_THERE) sau ceva de genul ca sa nu mai fac alta functie.

Oricum, multumesc pentru ajutor. Pana la urma am sa fac cu CreateDirectory.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...