Qt datei verschieben



  • hi wie kann ich eine datei aus einem ordner in ein anderes verschieben?



  • Einfach umbenennen.



  • auslesen->löschen->file erstellen->in file schreiben



  • KuhTee schrieb:

    Einfach umbenennen.



  • Auf der selben Partition durch umbenennen.
    Statisch:
    QFile::
    bool rename ( const QString & oldName, const QString & newName )
    Oder mit Objekt:
    bool rename ( const QString & newName )

    Bei Ordnern auf einer anderen Partition,ggf noch Exeption einbauen:

    bool MainWindow::htmlup(QString s,QString d){
    QDir desti;
    desti.mkpath(d);
    QDir source=s;
    QStringList flist=source.entryList(QDir::NoDotAndDotDot | QDir::Files);
    QStringList dlist = source.entryList(QDir::NoDotAndDotDot | QDir::Dirs);
    for(int i = 0; i<flist.size();i++){
    if(!QFile::copy(s+"/"+flist.at(i),d+"/"+flist.at(i))){
    return false;
    }
    }
    foreach(QString dir,dlist){
    htmlup(s+"/"+dir,d+"/"+dir);
    }
    return true;
    }

    void MainWindow::delup(QString del){
    QDir deldir(del);
    QStringList flist = deldir.entryList(QDir::NoDotAndDotDot | QDir::Files);
    QStringList dlist = deldir.entryList(QDir::NoDotAndDotDot | QDir::Dirs);
    for(int i = 0;i<flist.size();i++){
    if(!QFile::remove(del+"/"+flist.at(i))){
    QMessageBox::information(this,"Achtung",del+"/"+flist.at(i)+"konnte nicht gelöscht werden!\n Bitte löschen sie Analog");
    }
    }
    foreach(QString dir, dlist){
    delup(QString("%0/%1").arg(del).arg(dir));
    deldir.rmdir(dir);
    }
    deldir.rmdir(del);
    }


Anmelden zum Antworten