1. 程式人生 > >MFC 建立多級目錄

MFC 建立多級目錄

#include <direct.h>
#include <io.h>

int CreatMultiDir(const CString strDir)
{
	int i = 0;
	int iRet;
	int iLen;
	char* pszDir;

	if(strDir.IsEmpty())
	{
		return 0;
	}

	USES_CONVERSION;
	pszDir = T2A(strDir);
	iLen = strlen(pszDir);

	// 建立中間目錄
	for (i = 0;i < iLen;i ++)
	{
		if (pszDir[i] == '\\' || pszDir[i] == '/')
		{ 
			pszDir[i] = '\0';

			//如果不存在,建立
			iRet = _access(pszDir,0);
			if (iRet != 0)
			{
				iRet = _mkdir(pszDir);
				if (iRet != 0)
				{
					return -1;
				} 
			}
			//支援linux,將所有\換成/
			pszDir[i] = '/';
		} 
	}

	iRet = _mkdir(pszDir);
	return iRet;
}