三种C/C++创建文件夹的方法
2017-04-23 22:56
295 查看
第一种:
调用MFC封装好的接口函数,主要会用到 PathIsDirectory //判断是否存在
#include "shlwapi.h"
#pragma comment(lib,"shlwapi.lib")
#include <afx.h>
第二种:
编写C/C++函数实现该功能
例如:
#include <io.h>
#include <direct.h>
#define PATH_DELIMITER '\\'
第三种:
调用DOS命令
例如:
#include <stdlib.h>
参考:https://github.com/liuruoze/EasyPR.git
调用MFC封装好的接口函数,主要会用到 PathIsDirectory //判断是否存在
::CreateDirectory //创建例如:
#include "shlwapi.h"
#pragma comment(lib,"shlwapi.lib")
#include <afx.h>
CString path = "../../../STL/stl2"; if (!PathIsDirectory(path)) { ::CreateDirectory(path, 0); }
第二种:
编写C/C++函数实现该功能
例如:
#include <io.h>
#include <direct.h>
#define PATH_DELIMITER '\\'
bool createDirectory(const std::string folder) { std::string folder_builder; std::string sub; sub.reserve(folder.size()); for (auto it = folder.begin(); it != folder.end(); ++it) { //cout << *(folder.end()-1) << endl; const char c = *it; sub.push_back(c); if (c == PATH_DELIMITER || it == folder.end() - 1) { folder_builder.append(sub); if (0 != ::_access(folder_builder.c_str(), 0)) { // this folder not exist if (0 != ::_mkdir(folder_builder.c_str())) { // create failed return false; } } sub.clear(); } } return true; }
const std::string path2 = "..\\..\\..\\STL\\stl2"; createDirectory(path2);
第三种:
调用DOS命令
例如:
#include <stdlib.h>
system("md stl2");
参考:https://github.com/liuruoze/EasyPR.git
相关文章推荐
- C++中三种创建对象的方法【转】
- [C++]监控特定文件夹的事件:三种解决方法汇总
- [C++]监控特定文件夹的事件:三种解决方法汇总
- C++之三种创建对象方法的区别
- [C++]监控特定文件夹的事件:三种解决方法汇总
- [C++]监控特定文件夹的事件:三种解决方法汇总
- C++通过URL下载文件和创建文件夹方法
- C++三种创建对象的方法区别
- [C++]监控特定文件夹的事件:三种解决方法汇总
- 创建对象的 三种方法
- SharePoint 2010 禁用列表或文档库新建文件夹命令的三种方法
- C#创建Excel(.xls和.xlsx)文件的三种方法
- 写出三种创建类的实例的方法
- Postgresql 创建主键并设置自动递增的三种方法
- vc程序中运行其他程序和创建文件夹的方法:
- javascript实现创建对象的三种方法
- C++创建文件夹
- 转:SharePoint 2010 禁用列表或文档库新建文件夹命令的三种方法
- 创建多级文件夹的方法
- Spring中创建bean的三种方法