VC实时获取文件夹内文件数量

是文件夹内的任何文件数量,我需要同时监控3个文件(无需多线程,有更好),数量反馈给编辑框就可以了... 是文件夹内的任何文件数量,我需要同时监控3个文件(无需多线程,有更好),数量反馈给编辑框就可以了 展开
 我来答
bhtzu
推荐于2016-07-04 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4072万
展开全部
int CountDirectory(CString path) 

    int count = 0; 
    CFileFind finder; 
    BOOL working = finder.FindFile(path + "\\*.*"); 
    while (working)
    {
        working = finder.FindNextFile(); 
        if (finder.IsDots()) 
            continue; 
        if (!finder.IsDirectory()) 
            count++; 
    } 
    return count; 
}

以上为不递归子目录的统计代码,如果文件不是非常多,那么添加这个函数,然后在对话框的OnTimer定时器响应函数中用定时器做:

void CDialog1::OnTimer(UINT nIDEvent) 
{
    // TODO: Add your message handler code here and/or call default
    if (nIDEvent==1)
    {
        int i = CountDirectory("目录1");
        CString str;
        str.Format("%d",i);
        GetDlgItem(IDC_EDIT1)->SetWindowText(str);
    }
    CDialog::OnTimer(nIDEvent);
}

 注意在适当的时候(如OnInitDialog中)SetTimer(1,5000);就可以了

ttyyuu20111201
推荐于2016-08-11 · TA获得超过1362个赞
知道小有建树答主
回答量:278
采纳率:0%
帮助的人:275万
展开全部
文件个数:遍历文件夹,CFindFile找"*.*",设个变量,找到文件,就加个1,这个很容易实现的。
你要怎样监控文件?监控指定文件存在与否?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式