请问如何知道一个文件的创建时间?

kingman888 2003-04-25 03:21:57
AnsiString filename;
filename="c:\1.doc";

如何读出这个文件的创建时间?

...全文
85 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingman888 2003-04-25
  • 打赏
  • 举报
回复
谢谢了, ch21st(风尘鸟) 的方法最好好用了。
crysword 2003-04-25
  • 打赏
  • 举报
回复
这是我从书上抄来的一段得到文件创建,更改和最后访问时间的函数,给你做做参考,因为我也是新手,但愿对你有用
在定义中加入函数声明;
TDateTime GetFileTime(String sFilename,int TimeType);
函数定义

{
WIN32_FIND_DATA ffd;
WORD fd,ft;
DWORD fdt;
FILETIME lft,Time;
HANDLE H;

H = FindFirstFile(sFilename.c_str(),&ffd);
Swith(TimeType)
{
case 0:Time = ffd.ftCreationTime;break;
case 1:Time = ffd.ftLastWriteTime;break;
case 2:Time = ffd.ftLastAccessTime;break;
default:
Time = ffd.ftCreationTime;
}
if (H!=INVALID_HANDLE_VALUE)
{
FindClose(H);
FileTimeToLocalFileTime(&Time,&lft);
FileTimeToDosDateTime(&lft,&fd,&ft);
return FileDateToDateTime(MAKELONG(ft,fd));
}
else
return TDateTime();
}
Acquarius 2003-04-25
  • 打赏
  • 举报
回复
新手的问题还都不简单呐。
keenleung 2003-04-25
  • 打赏
  • 举报
回复
写错了
printf( "Time created : %s", ctime( &buf.st_ctime ) );
keenleung 2003-04-25
  • 打赏
  • 举报
回复
用C函数_stat也可以
struct _stat buf;
int result = _stat( "c:\\1.doc", &buf );
if( result != 0 )
printf("Error\n");
else
{
/* Output some of the statistics: */
printf( "Time created : %s", ctime( &buf.ct_atime ) );
}
道素 2003-04-25
  • 打赏
  • 举报
回复
FileGetDate
FileAge
kingman888 2003-04-25
  • 打赏
  • 举报
回复
能否写出具体的代码?我是新手。
最后要的时间格式是:2001-10-18 10:01
c2y 2003-04-25
  • 打赏
  • 举报
回复
BOOL GetFileTime(

HANDLE hFile, // identifies the file
LPFILETIME lpCreationTime, // address of creation time
LPFILETIME lpLastAccessTime, // address of last access time
LPFILETIME lpLastWriteTime // address of last write time
);

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧