CreateDirectory这个函数的作用是创建一个新的目录。如果底层文件系统支持文件和目录上的安全描述,该功能可将指定的安全描述到新的目录。
函数原型:
BOOL CreateDirectory(
);
参数:
返回值:
备注:
--->>>
例如:我们要创建:D:\\一级文件夹\\二级文件夹\\...
CString str = "D:\\一级文件夹";
CreateDirectory(str, NULL);
str += "\\二级文件夹";
CreateDirectory(str, NULL);
以此类推。
在创建新的目录之前,我们也可以先判断该目录是否已经存在,例如:
CString
if (!PathIsDirectory(str))
{
}
str += "\\二级文件夹";
if (!PathIsDirectory(str))
{
}
在调用PathIsDirectory()函数时,需要包含以下头文件与库函数:
#include "shlwapi.h"
#pragma comment(lib,"shlwapi.lib")
emptyvoid CTemperatureDlg::OnBnClickedButtonStart()
{
// TODO: 在此添加控件通知处理程序代码
if(currentLab.GetLength()!=0)
{
openComPort(currentLab);
GetDlgItem(IDC_BUTTON_START)->EnableWindow(false);
GetDlgItem(IDC_BUTTON_STOP)->EnableWindow(true);
GetDlgItem(IDC_COMBO_COMLIST)->EnableWindow(false);
// 创建FBG数据的文件夹
CTime t = CTime::GetCurrentTime();
unsigned int y = t.GetYear(); // 获取年份
unsigned int m = t.GetMonth(); // 获取当前月份
unsigned int d = t.GetDay(); // 获得几号
unsigned int h = t.GetHour(); // 获取当前为几时
unsigned int mm =t.GetMinute(); // 获取分钟
unsigned int s = t.GetSecond(); // 获取秒
CString foldName;
foldName.Format(_T("FBG波长数据(%d-%02d-%02d %02d:%02d:%02d)"),y,m,d,h,mm,s);
m_FBG_CurrentPath = m_ALL_CurrentPath + _T("\\") + foldName;
CreateDirectory(m_FBG_CurrentPath, NULL); // 建立文件存储根目录
//
m_sFBG_CurrentPath = m_sALL_CurrentPath + _T("\\") + foldName;
CreateDirectory(m_sFBG_CurrentPath, NULL); // 建立文件存储根目录
CString ntemp;
for(int i=1;i<=32;i++)
{
ntemp.Format(_T("\\通道%d"),i);
CreateDirectory(m_FBG_CurrentPath+ntemp, NULL); // 建立各通道文件夹,二级文件夹!
}
sFBG_first = true;
}
}