#pragma once class AFX_EXT_CLASS CPathUtility { public: CPathUtility(void); ~CPathUtility(void); /** * @brief 获取当前执行文件所在目录函数 * @return 返回值格式类似"D:\\WorkPath\\Utility",最后没有'\\'字符 */ static CString GetModulePath(); /** @brief 获取文件后缀名 */ static CString GetFileExt(const CString& strFileName); /** @brief 获取文件名称(不包含后缀)*/ static CString GetFileName(const CString& strFileName); /** @brief 获取文件所在目录 */ static CString GetDir(const CString& strFileName); /** * @brief 判断路径是否存在 * @param [in] strPath 路径,可以是文件、文件夹 */ static BOOL IsExistPath(const CString& strPath); /** @brief 判断一个文件名是否有效 */ static BOOL IsValidName(const CString& strName); /** * @brief 创建一个目录 */ static BOOL CreateDir(const CString& strDir); /** * @brief 重命名目录 * @param [in] strDir 目录名、全路径 * [in] strName 新的目录名、全路径 */ static BOOL RenameDir(const CString& strDir,const CString& strName); /** * @brief 删除目录下的所有目录和文件 * @param [in] strDir 目录名,最后没有'\\'字符 */ static BOOL DeleteDir(const CString& strDir); /** @brief 获取当前工作目录的函数 */ static CString GetWorkDir(); /** @brief 设置当前工作目录的函数 */ static void SetWorkDir(const CString& strDir); /** @brief 返回Windows目录 */ static CString GetWindowsDir(); /** @brief 返回System目录 */ static CString GetSystemDir(); /** * @brief 选择文件夹函数、不包含最後的'\\'字符 * @param [in][out]strSelectedFolder,传入起始选择文件夹 [in] strTitle 文件夹标题 [in] 选择文件夹对话框父类句柄 */ static BOOL GetFolder(CString& strSelectedFolder,const CString& strTitle, HWND hParentWnd); };