C++:使用当前时间创建文件夹

程序效果:


在这里插入图片描述

用于判断文件夹是否存在不存在创建的函数


void newmkdir(string dir)
{
	int m = 0, n;
	string str1, str2;
	str1 = dir;
	str2 = str1.substr(0, 2);   //substr是C++语言函数,主要功能是复制子字符串,要求从指定位置开始,并具有指定的长度
	str1 = str1.substr(3, str1.size()); //  '//'算一个字符,转义字符
	while (m >= 0)
	{
		m = str1.find('\\');     //.find()是寻找该字符串下标位置
		str2 += '\\' + str1.substr(0, m);
		n = _access(str2.c_str(), 0); //判断该目录是否存在   //c_str():生成一个const char*指针,指向str2
									  //_access,确定文件或文件夹的访问权限。如果指定的存取方式有效,则函数返回0,否则函数返回-1。
		if (n == -1)
		{
			_mkdir(str2.c_str());     //创建目录
		}
		str1 = str1.substr(m + 1, str1.size());
	}
}

获取当前时间并且创建夹的函数


void mkdirUseTime(string sProjectDir)
{
	//获取当前时间保持到字符串中
	struct tm t;   //tm结构指针
	time_t now;  //声明time_t类型变量
	time(&now);      //获取系统日期和时间
	localtime_s(&t, &now);   //获取当地日期和时间
	char cNowTime[64];
	strftime(cNowTime, sizeof(cNowTime), "%Y%m%d-%H%M%S", &t);
	//格式化输出本地时间
	//判断文件夹是否存在并且命名
	cout << cNowTime;
	//string sProjectDir = "D://lcmProject//";
	newmkdir(sProjectDir);
	string sNowTimeFileDir = sProjectDir + cNowTime;
	newmkdir(sNowTimeFileDir);
}

进行测试


#include "stdafx.h"
#include "onedll.h"
#include "stdafx.h"
#include <iostream>
#include <string>
#include <direct.h> //_mkdir函数的头文件
#include <io.h>     //_access函数的头文件
#include <windows.h>
#include <vector>
#include <opencv2\opencv.hpp>
#include <opencv2\core\core.hpp>
#include <algorithm>
#include <fstream>
#include <sstream>
#include<cmath>
#include <thread>
#include <typeinfo>

int main()
{
	string sProjectDir = "D://lcmProject//";
	 newmkdir(sProjectDir);
	 mkdirUseTime(sProjectDir )
	return 0;
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值