在好例子网,分享、交流、成长!
您当前所在位置:首页C/C++ 开发实例常规C/C++编程 → 桌面文件整理器

桌面文件整理器

常规C/C++编程

下载此实例
  • 开发语言:C/C++
  • 实例大小:0.18M
  • 下载次数:2
  • 浏览次数:23
  • 发布时间:2022-01-12
  • 实例类别:常规C/C++编程
  • 发 布 人:walle7788
  • 文件格式:.zip
  • 所需积分:1
 相关标签: 桌面 文件整理

实例介绍

【实例简介】桌面文件整理器

【实例截图】

【核心代码】void Widget::dowork()
{
    QString mpath= ui->lineEdit->text();
    QString mtarget=ui->lineEdit_2->text();

    if(mtarget.isEmpty())return;
    QStringList allfiles=getFileinfolist(mpath);
    if(!mpath.isEmpty())
    {
           if(!m_yearflag) {
            work();
           }
           else{
            for(int i=0;i<m_sourcestr.size(); i)
            {
                QStringList mfiles;
                QString targetdir;

                //targetdir=mtarget "\" m_sourcestr[i].toUpper();

                mfiles= getFileList(allfiles,m_sourcestr[i]);

                qDebug()<<mfiles;
                qDebug()<<m_sourcestr[i];
                if(mfiles.size()<=0)continue;
                //create target dir;

                //to move file
                for(int j=0;j<mfiles.size();j )
                {
                   QFile file(mfiles[j]);
                   QFileInfo info(file);
                   QDateTime mdatetime;

                   mdatetime=info.lastModified().toLocalTime();
                   //qDebug()<<"year:"<<mdatetime;
                  // mdatetime=QDateTime::fromString(mdatetime.toString(),format);
                   //qDebug()<<"year:"<<mdatetime.toString("yyyy");
                   targetdir=mtarget "//" mdatetime.toString("yyyy") "\\" m_sourcestr[i].toUpper();
                   QDir dir(targetdir);
                   if(!dir.exists())
                       dir.mkdir(targetdir);
                   //copy
                   if(file.copy(targetdir "\\" info.fileName()))
                   //remove
                     if(!file.remove())
                         m_errors<<mfiles[j];
                }
            }
        }
        QMessageBox::information(nullptr,"","Done!",QMessageBox::Ok);
        errorinfo();
    }
}
void Widget::work()
{
    QString mpath= ui->lineEdit->text();
    QString mtarget=ui->lineEdit_2->text();
     QStringList allfiles=getFileinfolist(mpath);
    for(int i=0;i<m_sourcestr.size(); i)
    {
        QStringList mfiles;
        QString targetdir;

        targetdir=mtarget "\\" m_sourcestr[i].toUpper();

        mfiles= getFileList(allfiles,m_sourcestr[i]);

        if(mfiles.size()<=0)continue;

        //create target dir;
        QDir dir(targetdir);
        if(!dir.exists())
        {
            if(dir.mkdir(targetdir))
            {

            }
        }
        //to move file
        for(int j=0;j<mfiles.size();j )
        {

           QFile file(mfiles[j]);
           QFileInfo info(file);
           //copy
           if(file.copy(targetdir "\\" info.fileName()))
           //remove
           {
               QFile::setPermissions(mfiles[j],QFile::ReadOther|QFile::WriteOther);
               if(!file.remove())
                 m_errors<<mfiles[j];
           }
        }
    }

}

.
├── 1.jpg
├── 2.jpg
├── desktopPatch.pro
├── main.cpp
├── widget.cpp
├── widget.h
├── widget.ui
└── 好例子网_desktopPatch-桌面整理.zip

0 directories, 8 files



标签: 桌面 文件整理

实例下载地址

桌面文件整理器

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
;
报警