首页 > 编程语言 >C++ 修改文件创建时间、修改时间属性

C++ 修改文件创建时间、修改时间属性

时间:2023-11-28 10:04:18浏览次数:28  
标签:文件创建 C++ lastAccessTime 修改 时间 FILE lastWriteTime createTime


简介

        修改文件创建时间、修改时间、大小等属性。
        博客 《C++ 获取文件创建时间、修改时间、大小等属性》分享后,好兄弟“古月”发来一段代码,说可以修改文件的创建时间等。测试了一下真可以,下面是运行效果和代码:

C++ 修改文件创建时间、修改时间属性_#include

代码

#include <windows.h>
#include <fstream>
#include <iostream>
using namespace std;

int main(int argc, char** argv) 
{
	SYSTEMTIME createTime; //创建时间
	GetSystemTime(&createTime);
	createTime.wDay = 9;
	createTime.wMonth = 02;
	createTime.wYear = 1923;
	createTime.wHour = 1;
	createTime.wMinute = 1;
	createTime.wSecond = 7;

	SYSTEMTIME lastWriteTime; //修改时间
	GetSystemTime(&lastWriteTime);
	lastWriteTime.wDay = 9; 
	lastWriteTime.wMonth = 2;
	lastWriteTime.wYear = 1923; 
	lastWriteTime.wHour = 9; 
	lastWriteTime.wMinute = 37; 
	lastWriteTime.wSecond = 23; 

	SYSTEMTIME lastAccessTime; //访问时间
	GetSystemTime(&lastAccessTime);
	lastAccessTime.wDay = 9; 
	lastAccessTime.wMonth = 2; 
	lastAccessTime.wYear = 1923; 
	lastAccessTime.wHour = 15; 
	lastAccessTime.wMinute = 31;
	lastAccessTime.wSecond = 8; 

	FILETIME lastWriteFiletime;
	SystemTimeToFileTime(&lastWriteTime, &lastWriteFiletime);
	FILETIME createFiletime;
	SystemTimeToFileTime(&createTime, &createFiletime);
	FILETIME lastAccessFileTime;
	SystemTimeToFileTime(&lastAccessTime, &lastAccessFileTime);
	HANDLE filename = CreateFile(L"E:\\LiHai123.txt", FILE_WRITE_ATTRIBUTES, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
	// 设置文件的时间属性为之前设定的创建时间、最后访问时间和最后修改时间  
	SetFileTime(filename, &createFiletime, &lastAccessFileTime, &lastWriteFiletime);
	CloseHandle(filename);
	return 0;
}


标签:文件创建,C++,lastAccessTime,修改,时间,FILE,lastWriteTime,createTime
From: https://blog.51cto.com/wangpaifeixingy/8595253

相关文章

  • C++ 使用Windows的API CreateDirectory 创建多层级文件夹
    简介使用Windows的API创建多层级文件夹效果代码#include<windows.h>#include<direct.h>#include<iostream>#include<string>#include<sstream>#include<vector>//创建多层级文件夹boolCreateDir(conststd::string&path){ std::......
  • C++ 获取文件创建时间、修改时间、大小等属性
    简介获取文件创建时间、修改时间、大小等属性代码#include<iostream>#include<string.h>#include<time.h>voidmain(){std::stringfilename="E:\\LiHai123.txt";struct_statstat_buffer;intresult=_stat(filename.c_str(),&stat_b......
  • C++ 获取网卡名称和IP地址
    描述这是获取网卡名称和IP地址的代码示例,参考自。原文描述得比较详细,感谢博主分享。原文代码中没有输出网卡的物理地址,下面的代码进行了补充,并在win10上运行正常。代码//#include<WinSock2.h>#include<Iphlpapi.h>#pragmacomment(lib,"Iphlpapi.lib")//需要添加Iphlpapi.lib......
  • C\C++ 设置Visual Studio编译器使用C++17标准
    文章作者:里海简介:        使用ISOC++17标准可以为开发人员带来许多好处,包括更简洁的代码、更高的运行效率、更好的硬件支持、更好的兼容性和可移植性,以及更好的多线程编程支持等。那么如何设置vs使用c++标准呢?下面是方法。注意需要vs2017及以上版本。方法:打开VisualStud......
  • C++ 33.C++中的字符串类-狄泰软件学院
    C语言字符串的历史C语言不支持真正意义上的字符串C语言用字符数组和一组函数实现字符串操作C语言不支持自定义类型,因此无法创建字符串类型当年C语言主要用于开发UNIX操作系统,处理字符串的情况少,所以在当时的背景下没有让C语言中内置一个字符串类型。后来C语言越用越广泛,没办法只能......
  • C\C++ 专栏目录
    个人总结序号内容笔记01C++获取网卡名称和IP地址笔记链接02C++设置VisualStudio编译器使用C++17标准笔记链接03C++使用Pugixml库,轻松处理XML文件笔记链接04C++使用ShellExecuteEx调exe程序笔记链接05C++使用exception类,抛出自定义异常并捕获笔记链接06C++使用soc......
  • Civil 3D导入样式后修改相应设置
    在上一篇随笔中,展示了从样板文件中导入样式到当前文档中,某些情况下,导入样式后需要"使用"从样式,比如创建横断面图时想使用刚刚导入的样式作为默认样式,只需简单的几行代码即可完成相应的操作。 下面是上一篇随笔中的代码修改后的情况: publicvoidC_SETest(){stri......
  • Switchhost修改host配置
    hosts是什么定义:是一个没有扩展名的系统文件,用来告诉浏览器网址对应的ip地址。作用:用户在浏览器访问网址时,浏览器首先访问host文件,寻找对应的ip地址,如果找到,便打开对应网页,不需要DNS域名解析,如果没找到,系统会将其网址提交DNS域名解析服务器进行ip地址的解析。由此可见,通过修改h......
  • C++标准库类std::packaged_task
    std::packaged_task是C++11引入的标准库类,用于封装可调用对象,如函数等,并将封装对象作为异步任务进行管理,通过与std::future结合使用,完成异步任务结果的获取。#include<iostream>#include<thread>#include<future>std::stringpromise_string(std::stringstr){......
  • js获取元素特性值+js修改元素特性值
    js获取元素特性值--元素<formclass="layui-formlayui-form-panelayui-form-itemus-form"id="us-form"usdata="{usurl:'/usanaly/roomenergylog/usgetentity',ussurl:'/usanaly/roomenergylog/usupdate',usload:'......