首页
IT
登录
6mi
u
盘
搜
搜 索
IT
获取文件时间属性
获取文件时间属性
xiaoxiao
2021-04-17
37
WIN32_FILE_ATTRIBUTE_DATA wfad;
CString strPath =
"SystemTestDlg.h"
;
CString strInfo;
ULONGLONG
liFileSize;
if
(!GetFileAttributesEx(strPath,GetFileExInfoStandard,&wfad))
{
AfxMessageBox(
"Get File Attributes Error"
);
return
;
}
//Get file time
m_ctrlDisplay.SetSel(-1,-1);
strInfo.Format(_T(
"%s%s\r\n"
),
"Create File time:"
,ShowFileTime(&wfad.ftCreationTime));
//wfad.ftLastAccessTime
//wfad.ftLastWriteTime
m_ctrlDisplay.ReplaceSel(strInfo);
//Get file size
liFileSize = wfad.nFileSizeHigh;
liFileSize <<
sizeof
(
DWORD
)*8;
liFileSize += wfad.nFileSizeLow;
m_ctrlDisplay.SetSel(-1,-1);
strInfo.Format(_T(
"%s%I64u\r\n"
),
"File Size: "
,liFileSize);
m_ctrlDisplay.ReplaceSel(strInfo);
//Get file attributes
strInfo =
""
;
if
(wfad.dwFileAttributes&FILE_ATTRIBUTE_ARCHIVE)
{
strInfo +=
"<Archive>"
;
}
if
(wfad.dwFileAttributes&FILE_ATTRIBUTE_COMPRESSED)
{
strInfo +=
"<Compressed>"
;
}
//FILE_ATTRIBUTE_DIRECTORY
//FILE_ATTRIBUTE_ENCRYPTED
//FILE_ATTRIBUTE_HIDDEN
//FILE_ATTRIBUTE_NORMAL
//FILE_ATTRIBUTE_OFFLINE
//FILE_ATTRIBUTE_READONLY
//FILE_ATTRIBUTE_SPARSE_FILE
//FILE_ATTRIBUTE_SYSTEM
//FILE_ATTRIBUTE_TEMPORARY
m_ctrlDisplay.SetSel(-1,-1);
m_ctrlDisplay.ReplaceSel(strInfo +
"\r\n"
);
//Set file attributes
//DWORD dwFileAttributes = GetFileAttributes(strPath);
DWORD
dwFileAttributes = wfad.dwFileAttributes;
dwFileAttributes |= FILE_ATTRIBUTE_READONLY;
if
(SetFileAttributes(strPath,dwFileAttributes))
{
AfxMessageBox(
"File Attributes set success!\r\n"
);
}
CString ShowFileTime(LPFILETIME lpTime)
{
//file time struct
FILETIME fileTimeLocal;
SYSTEMTIME systemTime;
CString strFileTime;
FileTimeToLocalFileTime(lpTime,&fileTimeLocal);
FileTimeToSystemTime(&fileTimeLocal,&systemTime);
strFileTime.Format(_T(
"M年-月-日,%#02d:%#02d:%#02d"
),systemTime.wYear,systemTime.wMonth,systemTime.wDay,
systemTime.wHour,systemTime.wMinute,systemTime.wSecond);
return
strFileTime;
}
转载请注明原文地址: https://ju.6miu.com/read-673378.html
技术
最新回复
(
0
)