VC++ 统计文件夹下面的当日和本月生成的图片
void GetCapNum(int * todayNum, int * mouthNum) {
string path = ".\\res";//路径位于程序运行目录下的res文件夹里面
string exd = "png";//提取png后缀名的文件
//文件句柄
long hFile = 0;
//文件信息
struct _finddata_t fileinfo;
string pathName, exdName;
if (0 != strcmp(exd.c_str(), ""))
{
exdName = "\\face*." + exd;//所有face*.png的文件 如果是\\*.png 就是所有的png文件
}
else
{
exdName = "\\face*";//所有face*.png的文件 如果是\\*.png 就是所有的png文件
}
printf("get current time %s\n" , pathName.assign(path).append(exdName).c_str());
if ((hFile = _findfirst(pathName.assign(path).append(exdName).c_str(), &fileinfo)) != -1)
{
//获取当前时间
time_t* mptr_currentSeconds = new time_t;
time(mptr_currentSeconds);
struct tm* m_localTime = localtime(mptr_currentSeconds);
printf("current Local time : %d:%d:%d\n", m_localTime->tm_hour, m_localTime->tm_min, m_localTime->tm_sec);
do
{
//如果是文件夹中仍有文件夹,迭代之
//如果不是,加入列表
/**
if ((fileinfo.attrib & _A_SUBDIR))
{
if (strcmp(fileinfo.name, ".") != 0 && strcmp(fileinfo.name, "..") != 0)
getFiles(pathName.assign(path).append("\\").append(fileinfo.name), exd, files);
}
else
{**/
if (strcmp(fileinfo.name, ".") != 0 && strcmp(fileinfo.name, "..") != 0) {
HANDLE picFile = 0;
FILETIME ftCreate, ftAccess, ftWrite;
SYSTEMTIME createTimeUTC, createTimeLocal;
//files.push_back(pathName.assign(path).append("\\").append(fileinfo.name));
string picpath = ".\\res\\";
picpath = picpath.append(fileinfo.name);
char *pth = (char *)picpath.data();
//获取图片的创建时间
printf("CreateFile %s \n",pth);
//picFile = CreateFile("D:\\dev\\fmt\\res\\face1.png", 0, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
picFile = CreateFile(pth, 0, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (INVALID_HANDLE_VALUE == picFile) {
printf("CreateFile error: %d", GetLastError());
continue;
//ExitProcess(0);
}
GetFileTime(picFile, &ftCreate, &ftAccess, &ftWrite);
FileTimeToSystemTime(&ftCreate, &createTimeUTC);
SystemTimeToTzSpecificLocalTime(NULL, &createTimeUTC, &createTimeLocal);
printf("创建时间:\t%02d/%02d/%d %02d:%02d \n",
createTimeLocal.wDay, createTimeLocal.wMonth, createTimeLocal.wYear,
createTimeLocal.wHour, createTimeLocal.wMinute);
if ((createTimeLocal.wDay == m_localTime->tm_yday) && (createTimeLocal.wMonth == m_localTime->tm_mon) && (createTimeLocal.wYear == m_localTime->tm_year)) {
*todayNum = *todayNum + 1;
}
*mouthNum = *mouthNum + 1;
}
//}
} while (_findnext(hFile, &fileinfo) == 0);
_findclose(hFile);
}
}
VC++ 统计文件夹下面的当日和本月生成的图片的更多相关文章
- 统计文件夹下java代码行数的小程序--主要是学习任务队列的思想
首先感谢czbk的老师,录制的视频,让我们有这么好的学习资料.……—— 统计文件夹java文件的行数,首先想到的肯定是用递归的方法,因为文件夹下面可能包含文件夹,用递归的方法,代码容易写.(这和写简单 ...
- python (9)统计文件夹下的所有文件夹数目、统计文件夹下所有文件数目、遍历文件夹下的文件
命令:os 用到的:os.walk os.listdir 写的爬虫爬的数据,但是又不知道进行到哪了,于是就写了个脚本来统计文件的个数 #统计 /home/dir/ 下的文件夹个数 import o ...
- Linux统计文件夹下文件信息
统计当前文件夹里面有多少文件,即统计文件个数 ls -l |grep "^-"|wc -l 统计当前文件夹里面有多少文件夹,即统计文件夹个数 ls -l |grep "^ ...
- linux统计文件夹大小
统计总大小: du -sh dirname 统计文件夹内部各文件大小及总大小: du -h dirname
- Linux上统计文件夹下文件个数以及目录个数
对于linux终端用户而言,统计文件夹下文件的多少是经常要做的操作,于我而言,我会经常在谷歌搜索一个命令,“如何在linux统计文件夹的个数”,然后点击自己想要的答案,但是有时候不知道统计文件夹命令运 ...
- AJPFX:实现递归统计文件夹的总大小
class Statistical { public static void main(String[] args) { Scanner sc = new Scanner(Syst ...
- Linux 统计文件夹下文件个数及目录个数
1. 统计文件夹下文件的个数 ls -l | grep "^-" | wc -l 2.统计文件夹下目录的个数 ls -l | grep "^d" | wc -l ...
- ls命名 | Linux统计文件夹内的文件个数
ls命名 man ls -R 递归列出全部的目录内容 recusive -a 列出所有的文件(包括以 . 开头的隐藏文件) all -r 逆序排列 reverse -t 按照时间信息排序 time - ...
- linux 统计文件夹下文件,文件夹,所有个数
统计某文件夹下文件的个数 ls -l |grep "^-"|wc -l 统计某文件夹下目录的个数 ls -l |grep "^d"|wc -l 统计文件夹下文件 ...
随机推荐
- 应该知道的25个非常有用的CSS技巧
在我们的前端CSS编码当中,经常要设置特殊的字体效果,边框圆角等等,还要考虑兼 容性的问题, CSS网页布局,说难,其实很简单.说它容易,往往有很多问题困扰着新 手,在中介绍了非常多的技巧,这些小技巧 ...
- const变量的存储区及修改权限
转自const变量的存储区及修改权限 [cpp] view plaincopy const int a = 1; int *p = const_cast<int*>(&a); *p ...
- unity 嵌入 百度分享 与 游戏内购物 iap
原地址:http://blog.csdn.net/u012085988/article/details/18268869 最近老板让在unity项目里实现分享与内购功能,还要ios和android两个 ...
- 用CURL来实现file_get_contents函数:curl_file_get_contents
<?php $url='http://www.bamuyu.com/news/zixun/list_7_2.html'; $content=curl_file_get_contents($url ...
- JavaScript 判断是否为undefined
if (typeof(reValue) == "undefined") { alert("undefined"); }
- DRUID连接池的简单使用
DRUID——为监控而生的DB池 1. DRUID介绍 DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监 ...
- [jobdu]第一个只出现一次的字符
刚开始还在想双指针,完全没必要.然后最土的可以扫两遍O(n),用一个数组记录出现次数.然后想到如果数组里记录出现的位置,可以只扫一遍O(n),第二遍扫字符集就行了. #include <iost ...
- SPRING IN ACTION 第4版笔记-第四章ASPECT-ORIENTED SPRING-011-注入AspectJ Aspect
一. 1. package concert; public interface CriticismEngine { public String getCriticism(); } 2. package ...
- Where is the ActiveX Project Type for Delphi 10.1 Berlin
n 10.1 Berlin the ActiveX project types are missing from the New Items Window under Delphi. They are ...
- Android 去除list集合中重复项的几种方法
因为用到list,要去除重复数据,尝试了几种方法.记录于此... 测试数据: List<"}; List<string> li2 = new List<string& ...