码迷,mamicode.com
首页 > 其他好文 > 详细

自动生成目录

时间:2015-12-13 17:13:38      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:

某人有个不好的习惯,每次做题之前都喜欢新建一个今天的时间为名字的文件夹,然后在这个文件夹里新建“A题” “B题”等文件夹,最后才在“A题”目录下新建“A.cpp",这样固然很美观,但是每次都这样做不免繁琐,于是某人就问我能不能自动新建这样的目录。

要新建这样的目录需要用到这些数据:

目录路径,系统时间。

而C++里面刚好有这样用于调试的变量。__TIME__储存的就是系统时间,__FILE__存储的是文件的目录,只要拿到这个程序的目录,就可以在这个目录下新建某人想要的目录了。

参考命令

1.新建目录 cmd:md +目录路径

2.新建文件 C++命令 ofstream file(文件路径)

代码如下:

#include<bits/stdc++.h>
using namespace std;
int main()
{
	cout<<"Input the number of porblems:\n";
	int n;
	cin>>n;
	string s4="md ",s1=__FILE__,s2=__DATE__,s3="\\";
	string::iterator it;
	for(it=s1.end()-1;;it--)
		if(*it!=‘\\‘)
			s1.erase(it);
		else break;
	s1.erase(it);
	for(auto &c: s2)
		c=(c==‘ ‘?‘-‘:c);
	string s=s4+s1+s3+s2;
	cout<<s<<endl;
	system(s.c_str());
	for(int i=0;i<n;i++)
	{
		string s5="\\Problem-A";
		s5[s5.size()-1]=‘A‘+i;
		string ans=s+s5;
		//cout<<ans<<endl;
		system(ans.c_str());
		string s6="\\A.cpp";
		s6[1]=‘A‘+i;
		ans+=s6;
		for(auto &c:ans)
			c=(c==‘\\‘?‘/‘:c);
		for(it=ans.begin();;it++)
			if(*it==‘ ‘)
				break;
		ans.erase(ans.begin(),it+1);
		//cout<<ans<<endl;
		ofstream file(ans);
	}
	return 0;
}

  

自动生成目录

标签:

原文地址:http://www.cnblogs.com/xionglinlin/p/5043002.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!