如何创建一个新的文件夹并在此文件夹中创建一个txt文件

时间:2023-01-02 21:38:32
想在d盘的data目录底下创建一个年月日命名的文件夹,并在文件夹中再创建一个以时分秒命名的txt文件,再写入数据
用下面的代码怎么不行阿?
strFileName.Format("d:\\data\\2003年%02d月%02d日\\%02d时%02d分%s.txt",tempmonth,tempday,temphour,tempmin,tempkind);

FILE* datafile1;
if((datafile1=fopen(strFileName,"w"))==NULL)//f:\\work\\file
{
AfxMessageBox("打开文件*.txt时出错,请检查!");
//return FALSE ;
}
但是创建一个文件是可以的
strFileName.Format("%02d时%02d分%s.txt",temphour,tempmin,tempkind);

FILE* datafile1;
if((datafile1=fopen(strFileName,"w"))!=NULL)
这样完全可以

大侠指教,能不能这样直接创建文件夹阿,还是要用其他的方法阿?

12 个解决方案

#1


CreateDirectory

#2


SetCurrentDirectory(_T("d:\\data));
strFileName.Format(_T("2003年%02d月%02d日"),tempmonth,tempday);
if(!CreateDirectory(strFileName,NULL))
  return;
SetCurrentDirectory(strFileName);
strFileName.Format(_T("%02d时%02d分%s.txt"),temphour,tempmin,tempkind);
CFile file(strFileName,CFile::modeCreate|CFile::modeReadWrite);

...

#3


fopen不能创建中间路径吧

#4


同意水银的。
up

#5


记录

#6


创建目录还是用CreateDirectory,文件读写我现在基本都用CFile,而不再用FILE.

#7


CreateDirectory;
CFile file;
file.Open

#8


CreateDirectory;

#9


The MakeSureDirectoryPathExists function creates all the directories in the specified DirPath.

BOOL MakeSureDirectoryPathExists(

    IN LPSTR DirPath
   );
 

Parameters

DirPath

A pointer to an ASCII string that contains a valid path name.

#10


楼上说的太全了
我哑口无言

#11


我就说个最容易的吧,mkdir("d:\\data\\...")中间的字符串就你自己去搞了,这个好就好在容易,就算文件夹存在也不会出错,没有就会创建喽。

#12


谢谢大家阿

#1


CreateDirectory

#2


SetCurrentDirectory(_T("d:\\data));
strFileName.Format(_T("2003年%02d月%02d日"),tempmonth,tempday);
if(!CreateDirectory(strFileName,NULL))
  return;
SetCurrentDirectory(strFileName);
strFileName.Format(_T("%02d时%02d分%s.txt"),temphour,tempmin,tempkind);
CFile file(strFileName,CFile::modeCreate|CFile::modeReadWrite);

...

#3


fopen不能创建中间路径吧

#4


同意水银的。
up

#5


记录

#6


创建目录还是用CreateDirectory,文件读写我现在基本都用CFile,而不再用FILE.

#7


CreateDirectory;
CFile file;
file.Open

#8


CreateDirectory;

#9


The MakeSureDirectoryPathExists function creates all the directories in the specified DirPath.

BOOL MakeSureDirectoryPathExists(

    IN LPSTR DirPath
   );
 

Parameters

DirPath

A pointer to an ASCII string that contains a valid path name.

#10


楼上说的太全了
我哑口无言

#11


我就说个最容易的吧,mkdir("d:\\data\\...")中间的字符串就你自己去搞了,这个好就好在容易,就算文件夹存在也不会出错,没有就会创建喽。

#12


谢谢大家阿