在C++中如何判断文件夹是否存在,不存在的话创建文件夹

如题所述

参考代码如下:
#include <stdio.h>
#include <direct.h>
#include <stdlib.h>
#include <memory>
//检查文件夹是否存在,不存在则创建之
//文件夹存在返回 0
//文件夹创建失败返回-1
//文件夹创建失败返回1
int CheckDir(char* Dir)
{
FILE *fp = NULL;
char TempDir[200];
memset(TempDir,'\0',sizeof(TempDir));
sprintf(TempDir,Dir);
strcat(TempDir,"\\");
strcat(TempDir,".temp.fortest");
fp = fopen(TempDir,"w");
if (!fp)
{
if(_mkdir(Dir)==0)
{
return 1;//文件夹创建成功
}
else
{
return -1;//can not make a dir;
}
}
else
{
fclose(fp);
}
return 0;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-08-16
#include<fstream.h>
void main()
{
  ofstream f("c:\\test.txt");//打开文件test.txt,用于写,若文件不存在就先创建它 


不好意思,这个是判断文件的,但我不知道会不会自动创建路径。
第2个回答  2011-08-16
你打开文件的时候如果不存在就自动创建了追问

没有啊!如果文件夹不存在需自己创建,谢谢!

追答

我想起来了有个system的函数,就是那个能往里面写dos命令的,如:system(“pause”);你只要用命令mkdir就可以解决问题了!

本回答被网友采纳
相似回答