C++判断文件或文件夹是否在,不存在则创建

一  判断文件是否存在, 不存在则创建

       使用文件流fstream打开,

#include 
#include 

using namespace std;

void isFileExist()
{
	const char* fname = "D:\\ASDF\\1234.txt";

	fstream fs;
	fs.open(fname, ios::in);

	if (!fs)
	{
		cout << "不存在该文件" << endl;

		//创建文件
		ofstream fout(fname);
		if (fout)
		{
			// 如果创建成功
			fout << "写入内容,也可以不写入" << endl;

			// 执行完操作后关闭文件句柄
			fout.close();
		}
	}
	else
	{
		cout << "该文件已经存在" << endl;
	}
}

 

二  判断文件夹是否存在,不存在则创建

#include 
#include 
#include 

void isDirExist()
{
	//判断文件夹是否存在,不存在则创建
	const char* dir = "D:\\AS";
	//const char* dir = "D:\\ASDF\\123.txt";   //_access也可用来判断文件是否存在

	if (_access(dir, 0) == -1)
	{
		_mkdir(dir);
		cout << "该文件夹不存在,已自动创建" << endl;
	}
	else
	{
		cout << "文件夹AS已经存在" << endl;
	}
}

 

 解决这种问题的方法很多,windows API,MFC, Qt, Boost等都有自己的方法。

你可能感兴趣的:(#,C++,疑难杂症)