1.纯C函数, 加windows创建目录函数CreateDirectory
char Buffer[256];
char buf[256];
char b[3];
char* p;
sprintf(b,"//");
sprintf(Buffer,dd);
p = Buffer;
while(strchr(p,'//'))
{
if (p[0] == b[0])
{
int res = p - Buffer + 1;
for(int i = 0; i < res; i++)
buf[i] = Buffer[i];
buf[i] = '/0';
CreateDirectory(buf,NULL);
}
p++;
}
char buf[256];
char b[3];
char* p;
sprintf(b,"//");
sprintf(Buffer,dd);
p = Buffer;
while(strchr(p,'//'))
{
if (p[0] == b[0])
{
int res = p - Buffer + 1;
for(int i = 0; i < res; i++)
buf[i] = Buffer[i];
buf[i] = '/0';
CreateDirectory(buf,NULL);
}
p++;
}
2.C++标准库string, 加windows创建目录函数CreateDirectory
string strPath = szDir;
string strDir = "";
int nPos = 0;
string strPath = szDir;
string strDir = "";
int nPos = 0;
nPos = strPath.find('//',nPos); //返回绝对位置,而不是从npos开始的相对位置
while(nPos != string::npos)
{
strDir = strPath.substr(0, nPos+1);
CreateDirectory(strDir.c_str(), NULL);
while(nPos != string::npos)
{
strDir = strPath.substr(0, nPos+1);
CreateDirectory(strDir.c_str(), NULL);
nPos = strPath.find('//',nPos+1); //此处从‘/’后开始查询
} while(nPos != string::npos);
本文介绍如何利用C语言和C++标准库配合Windows API中的CreateDirectory函数实现多级目录的自动创建。通过两种不同的编程方式,演示了字符串处理及目录创建的过程。
525

被折叠的 条评论
为什么被折叠?



