VS 工程项目中用于获取当前项目根目录的方法
来源:互联网 发布:淘宝代练可靠吗 编辑:程序博客网 时间:2024/05/19 14:39
在VS中定位当前工程项目的根目录!
涉及到:
#include <windows.h>头文件中的GetCurrentDirectory()方法和GetModuleFileName()方法。
file_manager.h
#pragma once#include <windows.h>#include <string>using namespace std;class FileManager{public:static string GetRootDirectory();static string GetExeDirectory();private://构造函数FileManager() {};//获取当前项目根目录static void loadRootDir();//获取exe文件目录static void loadExeDir();//静态数组static char rootPath[MAX_PATH];//根目录static char exePath[MAX_PATH];//执行文件目录};
file_manager.cpp
#include "file_manager.h"//类的静态数组 初始化char FileManager::rootPath[MAX_PATH] = "";char FileManager::exePath[MAX_PATH] = "";string FileManager::GetRootDirectory(){loadRootDir();string root = rootPath;/*for (char &c : root){if (c == '\\')c = '\/';}*/for (auto iter = root.begin(); iter != root.end(); iter++){if (*iter == '\\')*iter = '\/';}return root;}string FileManager::GetExeDirectory(){loadExeDir();string exe = exePath;exe = exe.substr(0, exe.find_last_of('\\'));/*for (char &c : exe){if (c == '\\')c = '\/';}*/for (auto iter = exe.begin(); iter != exe.end(); iter++){if (*iter == '\\')*iter = '\/';}return exe;}//获取当前项目根目录void FileManager::loadRootDir(){GetCurrentDirectory(MAX_PATH, rootPath);}//获取exe文件目录void FileManager::loadExeDir(){GetModuleFileName(NULL, exePath, MAX_PATH);}
使用方法:
//获取当前项目目录string rootPath = FileManager::GetRootDirectory();std::cout << "root: " << rootPath << std::endl;//获取exe文件的目录string exePath = FileManager::GetExeDirectory();std::cout << "exe: " << exePath << std::endl;
0 0
- VS 工程项目中用于获取当前项目根目录的方法
- Struts2获取当前项目的根目录
- js获取当前项目的根目录
- 获取项目根目录的方法
- ASP中用于获取当前页面URL的函数
- 获取java项目的根目录-方法大全
- 获取java项目的根目录-方法大全
- 获取java项目的根目录-方法大全
- 获取当前根目录的用法
- 获取java项目根目录的几种方法汇总
- c# 获取项目的根目录
- c# 获取项目的根目录
- js获取项目的根目录
- c# 获取项目的根目录
- 【WPF】获取项目的根目录
- c++ 获取当前用户的根目录
- Java获取当前工程的根目录
- 获取站点根目录的方法
- Fruit
- 应用协议
- 我的软件工程课目标
- 26岁--最希望做给别人带来幸福的事情
- java中的三大特征之一多态
- VS 工程项目中用于获取当前项目根目录的方法
- C++迭代器iterator
- IP协议
- 数据压缩实验一:yuv转rgb
- 应用程序、内核、驱动的关系
- JavaWeb监听器
- 由一次SQL注入去理解防SQL注入
- 修改XAMPP for mac中的MySQL字符集
- 在云开发的新时代中,可以看到的十大趋势