Ordner anlegen falls nicht vorhanden?



  • Hallo

    Ich möchte prüfen ob ein Ordner vorhanden ist, und falls nicht einen anlegen...

    Wie kann ich mit C++ prüfen ob ein ordner vorhanden ist und wie kann ich einen anlegen??

    Falls das Systemabhängig ist wäre es nett wenn jemand die lösung für windows und Linux posten würde...

    Danke schonmal



  • Hallo,

    ja, ist es, aber schau mal hier:
    http://www.boost.org/libs/filesystem/doc/operations.htm#create_directory

    Das ist eine systemunabhängige Lösung, funktioniert also unter Win wie auch unter Linux (sofern du natürlich boost installiert hast).



  • Mit _mkdir() müsste es aber auch gut gehen:

    if( _mkdir( "MEINEDATEI.DAT" ) == EEXIST  )
    {
          printf("vorhanden\n")
    }
    else
          printf("erstellt\n");
    


  • Hallo,

    ja, aber nur unter Windows denke ich. Linux kennt _mkdir nicht.



  • Danke!

    Also das mit dem überprüfen versteh ich noch nicht ganz, da wird doch eine datei abgefragt oder? Ich will nur prüfen ob im selben verzeichnis wie das, wo das programm liegt ein ordner mit bestimmtm namen ist oder nicht...

    ok also erstellen geht mit _mkdir() , also, unterwindows (ist das in der windows.h?) jetzt bräucht ich noch ne linux lösung. Das boost dings für beide systeme ist zwar cool, aber wenns nur funzt wenn das teil auch installiert ist, find ichs etwas unpraktisch...da mach ich lieber zwei programme...danke



  • Hallo,

    da stellt sich natürlich die Frage, was einfacher ist: Einmal etwas zu installieren und die Vorteile ständig nutzen zu können, oder zwei Programme zu schreiben und zu warten. Du solltest dir boost evtl. mal etwas genauer anschauen, denn es bietet noch etwas mehr Features als "nur" das Filesystem. Wenn du allerdings wirklich nur mal eben ein kleines Tool für dich schreiben willst, mag der Installationsaufwand in der Tat etwas zu groß sein.



  • Eigentlich mach ichs mehr zu lernzwecken als das ichs wirklich benutzen wollen würde, und ich will halt net nur für windows programmieren, sondern auch für Linux.



  • Hallo,

    boost soll evtl. irgendwann mal Standard werden, weswegen es nicht verkehrt wäre, sich damit vertraut zu machen.


Anmelden zum Antworten