VS2010 MFC中 創建文件夾及文件判空的方法



1. MFC中 創建文件夾的方法如下:

CString   strFolderPath = "./Output"; 
        //判斷路徑是否存在   
        if(!PathIsDirectory(strFolderPath))   
        {
            CString strMsg;
            strMsg.Format(_T("指定路徑\"%s\"不存在,是否創建?"),strFolderPath);   
            if(AfxMessageBox(strMsg,MB_YESNO) == IDYES)   
            {   
                //判斷文件夾是否創建成功 
                if(!CreateDirectory(strFolderPath,NULL))   
                {   
                    strMsg.Format(_T("創建路徑\"%s\"失敗!是否繼續?"),strFolderPath);   
                    if(AfxMessageBox(strMsg,MB_YESNO)==IDYES)   
                        return;   
                }
                else
                {
                    MessageBox(_T("創建成功。"),_T("提示"));
                }
            }   
        }

BOOL CreateDirectory(LPCTSTR lpPathNameLPSECURITY_ATTRIBUTES lpSecurityAttributes);
      第一個參數值為文件夾名稱,第二個參數值為安全屬性,一般設置為NULL即可。如果正確創建,返回值為1,如果沒有正常創建文件夾,則返回0。
特別的:該函數每次調用時都只能創建一級文件夾,即文件夾中不能再包含子文件夾。
      當希望創建含有子文件夾的文件夾時,可以先使用該函數創建一級文件夾,然后再使用該函數在一級文件夾下創建子文件夾。如:
希望創建:d:\\TEST\\temp,
      則:CString str = “d:\\TEST”;
            CreateDirectory(str, NULL);
            str = str + “\\temp”;
            CreateDirectory(str, NULL);
 
 
 

2. C++中 判斷文件是否為空的方法如下:

  //寫入excel文件
  FILE *factor = NULL;
  factor = fopen(strFolderPath + "/factor.csv", "a");
  //移動指針到文件末尾
  fseek( factor, 0, SEEK_END );
  //判斷文件是否為空
  if(ftell(factor) == 0)
   {
     fprintf(factor, "序號,算法名稱\n");
    }
  fprintf(factor, "%s,%s\n", str, S1);
  fclose(factor);
  factor  = NULL;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM