linux下c语言怎么获取文件创建时间?

author author     2023-03-24     697

关键词:

在 Windows 下,一个文件有创建时间、修改时间、访问时间。而在 Linux 下,一个文件也有三种时间,分别是访问时间(Access)、修改时间(Modify)、状态改变时间(Change)。

可以使用 stat 命令查看文件的访问时间、修改时间和状态改变时间。

很不幸,Linux 目前常见的文件系统是没有存储文件创建时间的,比如 ext3 就没有存储。但是有些文件系统是有的,尽管它们为创建时间使用的字段名称是不一样的,比如:

    ufs2 -> st_birthtimezfs -> crtimeext4 -> crtimebtrfs -> otimejfs -> di_otime

那么如何查看我们的文件系统呢?可以使用 df -T 命令来查看磁盘各个分区使用的文件系统类型。

本人使用的机器的磁盘分区使用的文件系统类型是 ext3,也就是说本人是无法查看文件创建时间的。但是,如果文件创建后就没有修改过,修改时间=创建时间;如果文件创建后,状态就没有改变过,那么状态改变时间=创建时间;如果文件创建后,没有被读取过,那么访问时间=创建时间,当这个基本不太可能。

那什么时候访问时间,修改时间和状态改变时间会变化呢?比如我们使用vi打开文件但不编辑,那么退出后文件的访问时间就会改变;比如我们使用vi打开文件并且编辑后保存退出,那么文件的修改时间就会改变,当然访问时间也改变了;再比如使用chmod +x给文件增加可执行的属性,那么文件的状态改变时间就会改变。

【答题不易,请采纳谢谢】

参考技术A 可以通过stat来读取文件,就可以获取到相关的文件信息。
char buf[65];
struct stat;
stat("c:\\test.txt", &sb);
sb.st_ctime 就是文件的创建时间。你可以用localtime()
转换成立能够识别的时间。
struct tm* t=localtime(sb.st_ctime);
sprintf(buf, "%04d-%02d-%02d %02d:%02d:%02d",
t->tm_year+1900, t->tm_mon+1, t->tm_mday,
t->tm_hour, t->tm_min, t->tm_sec);

linux下c语言简单实现获取配置文件中的配置项(代码片段)

使用好处:有些参数不用写死,也不用在编译时添加。免得每次修改参数修改代码或重新编译,直接使用配置文件即可。类比windows下GetPrivateProfileString、GetPrivateProfileInt获取配置的API1.使用vs2019创建linux项目1.1测试的配... 查看详情

linux下c语言简单实现获取配置文件中的配置项(代码片段)

使用好处:有些参数不用写死,也不用在编译时添加。免得每次修改参数修改代码或重新编译,直接使用配置文件即可。类比windows下GetPrivateProfileString、GetPrivateProfileInt获取配置的API1.使用vs2019创建linux项目1.1测试的配... 查看详情

linux下intel的mkl编程代码,怎么样编译。c++和c语言代码

我安装了intel的mkl,但是知道怎么样调用命令运行程序。如果我的分别是.cpp文件和.c文件。怎么样在linux下运行。我知道c++的是g++-gXXX.cpp-XXX,那么加入mkl库函数怎么调用?还是-g吗?我用程序提供的例子都是错误的。求高手参考... 查看详情

用c语言怎么创建文件夹

在C语言中可以通过调用创建文件夹函数,或者使用系统命令两种方法创建文件夹。一、调用库函数。C语言库函数创建文件夹依赖于编译器,不同编译器使用的创建文件夹函数不同。举例如下:1、VC/VS编译器。函数声明为int_mkdir(... 查看详情

在linux下怎样用c语言获取mp3时长?最好有个例子!

...列酒可以。2、#include<mmsystem.h>//包括多媒体API,标准c语言没有相关接口函数unsignedcharstr[256];sprintf(timebuffer,"status%sposition",MusicName);//timebuffer输出缓存区,格式字符串到timebuffer,MusicName为播放歌曲的完整路径mciSendString(M... 查看详情

在 Linux 上使用 Python 获取文件创建时间

】在Linux上使用Python获取文件创建时间【英文标题】:GetfilecreationtimewithPythononlinux【发布时间】:2009-09-1023:35:39【问题描述】:os.stat返回st_mtime和st_ctime属性,修改时间是st_mtime和st_ctime在POSIX上的“更改时间”。有没有使用python... 查看详情

c语言如何获取文件创建时间?

...技术A分类:电脑/网络>>操作系统/系统故障问题描述:C语言如何获取文件创建时间?解析:charbuf[65];structstat;stat("c:\\test.txt",&***);***.st_ctime就是文件的创建时间。你可以用localtime()转换成立能够识别的时间。structtm*t=l... 查看详情

linux终端下如何进行c语言编译

...要在代码框内写一个简单的C源程序。3、在程序中使用了C语言中的数学开方函数,sqrt(),所以需要引入math.h头文件。4、写完源程序之后,我们对其进行编译,如果使用通常的编译语句,【gccmath.c-omath】进行编译,会出现错误;... 查看详情

ubuntu下如何编译c语言

1、首先打开ubnutu开发环境,直接输入组合键ctrl+alt+t调出命令行界面。2、需要在当前目录下创建一个main.c文件。通过命令touchmain.c就可以直接创建该文件。要查看创建是否成功,直接通过命令ls查看即可。3、创建完main.c文件后,... 查看详情

linux下怎么用c语言获取一帧屏幕图像数据,怎么分块

1.利用FrameBuffer设备,用ioctl()函数获取相关屏幕信息,然后用mmap()映射,用两个for循环逐个读取for(y=0;y<scrinfo.yres;y++)for(x=0;x<scrinfo.xres;x++)获取一帧屏幕图像数据有没有更简洁方便的方法?2.把屏幕图像分成4×4或16×16的块。关... 查看详情

linux下c语言连接mysql

最近新学linux编程,使用c语言,现在练手项目是一个C操作远程mysql数据库.之前一直从事.net开发,在.net下要连接Mysql很方便,引用mysql提供程序就可以了,下载一个dll文件,然后引用到项目里,客户开不需要安装MyMsql客户端就可以连... 查看详情

linux下c获取文件的大小

获取文件大小这里有两种方法:方法一、范例:  unsignedlongget_file_size(constchar*path)   unsignedlongfilesize=-1;   FILE*fp;   fp=fopen(path,"r");   if(fp==NULL)      returnfilesize;   查看详情

在 Linux 中用 C 语言获取主音量

】在Linux中用C语言获取主音量【英文标题】:GetmastersoundvolumeinCinLinux【发布时间】:2011-12-0105:44:50【问题描述】:我正在尝试检索(可能稍后设置)Linux中的主音量。我正在使用PulseAudio,但理想情况下它也适用于ALSA。我发现this... 查看详情

linux下运行c语言程序

一、编写C语言的源代码 二、用gcc-cC文件名生成.o文件 三、用gcc-o可执行文件名.o文件名生成可执行文件 四、输入可执行文件名前加./执行可执行文件  查看详情

linux下c语言gcc编译的时候如果不知道.c文件怎么链接的?

...  1.源程序的编译    在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器.下面  我们以一个实例来说明如何使用gcc编译器.  假设我们有下面一个非常简单的源程序(hello.c):  intmain(intargc,char**argv)  ... 查看详情

易语言怎么检查文件夹是不是存在如果不存在创建一个指定名字的文件夹

单击按钮1检查d盘a文件夹是否存在,如果存在打开,不存在,创建一个名为a的文件夹1、在visualstudio当中创建一个C#控制台应用程序,选择新建项目,然后选择visualC#,再选中控制台应用程序,输入项目名称,选择位置,确定即可... 查看详情

在linux下怎么创建一个目录

求命令在linux下怎么创建一个目录在创建的目录下建立一个空文件再把此空文件复制到另一个文件目录,但不能让原来的属性发生改变.通过linux的mkdir命令来创建文件路径。操作步骤:通过cd命令进入要创建自路径的文件夹,通过... 查看详情

linux随笔三十二linux获取文件创建时间

一、概述linux上的文件也有三个时间属性,分别是可以使用statfilename查看某个文件的时间访问时间(accesstime简写为atime)修改时间(modifytime简写为mtime)状态修改时间(changetime简写为ctime)atime使用vi、cat等工具查看文件,atime就会... 查看详情