当前位置:网站首页>VC + + specified directory file output by time
VC + + specified directory file output by time
2020-11-08 09:40:00 【osc_4punxmqt】
function : Get all the files in a specified directory , Then save it in chronological order , Generally used for interface display , Or file list sorting function ...
// Sort
void CSubCameraControlDlg::FileArraySortbySystemTime(CStringArray& _arr)
{
int len = _arr.GetCount();
for(int i=0; i<len-1; i++)
{
int min=i;
for(int j=i+1; j<len; j++)
{
CString strtime1=GetFileLastModifyTime(_arr[min]);
CString strtime2=GetFileLastModifyTime(_arr[j]);
if(lstrcmpi(strtime1,strtime2)>0)
{
min=j;
}
}
CString t=_arr[min];
_arr[min]=_arr[i];
_arr[i]=t;
}
}
// Acquisition time
CString GetFileLastModifyTime(LPCTSTR strPath)
{
if (!::PathFileExists(strPath))
{
return _T("");
}
WIN32_FIND_DATA ffd ;
HANDLE hFind = FindFirstFile(strPath,&ffd);
if (INVALID_HANDLE_VALUE == hFind)
{
return _T("");
}
SYSTEMTIME st = {0};
FILETIME LocalFileTimel;
FileTimeToLocalFileTime(&ffd.ftLastWriteTime, &LocalFileTimel);
FileTimeToSystemTime(&LocalFileTimel, &st);
CString strFormat;
strFormat.Format(_T("%04d-%02d-%02d %02d:%02d:%02d.%03d"),st.wYear, st.wMonth, st.wDay,
st.wHour, st.wMinute, st.wSecond, st.wMilliseconds);
FindClose(hFind);
return strFormat;
}
// Find the files in the directory
void CSubCameraControlDlg::FindDirFile(CString strdir, CStringArray& _arr)
{
TCHAR szPath[MAX_PATH] = {0};
::GetModuleFileName(NULL, szPath, MAX_PATH);
::PathRemoveFileSpec(szPath);
CString strffmpegPath;
::PathCombine(strffmpegPath.GetBufferSetLength(MAX_PATH), szPath, strdir);
// CString filepath = _T("/path/to/folder/");
CString filename = _T("");
CString fullname = _T("");
CFileFind find;
BOOL IsFind = find.FindFile(strffmpegPath + _T("/*.*"));
while (IsFind)
{
IsFind = find.FindNextFile();
if (find.IsDots())
{
continue;
}
else
{
filename = find.GetFileName();
fullname = strffmpegPath + filename;
_arr.Add(fullname);
}
}
}
版权声明
本文为[osc_4punxmqt]所创,转载请带上原文链接,感谢
边栏推荐
- 狗狗也能操作无人机!你没看错,不过这其实是架自动驾驶无人机 - 知乎
- 5g + Ar out of the circle, China Mobile Migu becomes the whole process strategic partner of the 33rd China Film Golden Rooster Award
- 盘点那些你没想到的云计算应用场景(上)
- Adobe Prelude / PL 2020 software installation package (with installation tutorial)
- 软件测试就是这么回事?!
- Python3.9的7个特性
- 仅用六种字符来完成Hello World,你能做到吗?
- 糟糕,系统又被攻击了
- Face recognition: attack types and anti spoofing techniques
- sed之查找替换
猜你喜欢
2020-11-05
IOS upload app store error: this action cannot be completed - 22421 solution
More than 50 object detection datasets from different industries
[data structure Python description] use hash table to manually implement a dictionary class based on Python interpreter
Astra: Apache Cassandra的未来是云原生
Six key points of data science interview
swiper 窗口宽度变化,页面宽度高度变化 导致自动滑动 解决方案
Dogs can also operate drones! You're right, but it's actually an autonomous drone - you know
python_scrapy_房天下
PCIe 枚举过程
随机推荐
技术人员该如何接手一个复杂的系统?
[computer network] learning notes, Part 3: data link layer (Xie Xiren version)
How did Julia become popular?
Ulab 1.0.0 release
Do you really understand the high concurrency?
Distributed consensus mechanism
麦格理银行借助DataStax Enterprise (DSE) 驱动数字化转型
Daily challenges of search engines_ 4_ External heterogeneous resources - Zhihu
Flink的sink实战之一:初探
scala 中 Future 的简单使用
python学习 day1——基础学习
ASP.NET MVC下基于异常处理的完整解决方案
The difference between vivoy 73s and glory 30 Youth Edition
Solve the problem of rabbitmq message loss and repeated consumption
vivoY73s和vivoY70s的区别 vivoY73s和vivoY70s哪个值得入手
微信昵称emoji表情,特殊表情导致列表不显示,导出EXCEL报错等问题解决!
Littlest jupyterhub| 02 using nbgitpuller to distribute shared files
Px4 adds new applications
解决Safari浏览器下载文件文件名称乱码的问题
Rust: command line parameter and environment variable operation