當前位置:首頁 » 文件管理 » c中刪除文件夾

c中刪除文件夾

發布時間: 2022-11-16 13:59:46

❶ 在c語言中有沒有刪除文件夾的函數

可以用rmdir
不過 限制是 文件夾必須是空的
如果文件夾非空 需要遍歷遞歸調用remove和rmdir刪除所有文件和子文件夾。
事實上
系統命令的rm -r 也是rmdir和remove 遞歸的。

❷ VC刪除當前文件夾指定文件

使用DeleteFile 方法刪除指定文件。

BOOL DeleteFile(

LPCTSTR lpFileName // 文件名 指針

);

功能說明

刪除一個存在的文件

返回值

如果成功返回一個非0值

失敗返回0 可以用GetLastError函數得到錯誤信息

如果程序嘗試刪除一個不存在的文件。GetLastError返回ERROR_FILE_NOT_FOUND。如果文件是只讀 的,則GetLastError返回ERROR_ACCESS_DENIED

示例代碼:

CStringtype,dPath;
dPath.Format("%s\Log\",SystemDir);//指定路徑
BOOLret=0;
CFileFindtempFind;
CStringfoundFileName,tempFileName;
CStringtempFileFind=dPath+_T("*.*");
BOOLIsFinded=(BOOL)tempFind.FindFile(tempFileFind);
while(IsFinded)
{
IsFinded=(BOOL)tempFind.FindNextFile();
if(!tempFind.IsDots())
{
foundFileName=tempFind.GetFileName();
tempFileName=dPath+foundFileName;
ret=DeleteFile(tempFileName);//刪除文件
}
}
tempFind.Close();

❸ C#怎麼刪除文件夾的文件

publicstaticvoidDelectDir(stringsrcPath)

{

try

{

DirectoryInfodir=newDirectoryInfo(srcPath);

FileSystemInfo[]fileinfo=dir.GetFileSystemInfos();//返回目錄中所有文件和子目錄

foreach(FileSystemInfoiinfileinfo)

{

if(iisDirectoryInfo)//判斷是否文件夾

{

DirectoryInfosubdir=newDirectoryInfo(i.FullName);

subdir.Delete(true);//刪除子目錄和文件

}

else

{

//如果使用了streamreader在刪除前必須先關閉流,否則無法刪除sr.close();

File.Delete(i.FullName);//刪除指定文件

}

}

}

catch(Exceptione)

{

throw;

}

}

(3)c中刪除文件夾擴展閱讀

C#刪除指定文件或文件夾

//1、首先判斷文件或者文件路徑是否存在

if(File.Exists(fileFullPath))

{

//2、根據路徑字元串判斷是文件還是文件夾

FileAttributesattr=File.GetAttributes(fileFullPath);

//3、根據具體類型進行刪除

if(attr==FileAttributes.Directory)

{

//3.1、刪除文件夾

Directory.Delete(fileFullPath,true);

}

else

{

//3.2、刪除文件

File.Delete(fileFullPath);

}

File.Delete(fileFullPath);

}

❹ c\c++怎樣刪除文件夾

第一種方法
1.SHFileOperation

SHFILEOPSTRUCT FileOp;
ZeroMemory((void*)&FileOp,sizeof(SHFILEOPSTRUCT));

FileOp.fFlags = FOF_SILENT|FOF_NOCONFIRMATION;
FileOp.hNameMappings = NULL;
FileOp.hwnd = NULL;
FileOp.lpszProgressTitle = NULL;
FileOp.pFrom = lpszPath;
FileOp.pTo = NULL;
FileOp.wFunc = FO_DELETE;

SHFileOperation(&FileOp);
如果加了FOF_SILENT標志,那麼在函數調用的時候,即使出錯,也不會彈框提示,但是,今天發現,如果這個目錄是共享的,依然還是會彈框提示。不知道是不是一個Bug呢?

2.CFileFind

bool DeleteDirectory(char* strDirName)
{
CFileFind tempFind;
char strTempFileFind[MAX_PATH];

sprintf(strTempFileFind,"%s\\*.*", strDirName);
BOOL IsFinded = tempFind.FindFile(strTempFileFind);
while (IsFinded)
{
IsFinded = tempFind.FindNextFile();

if (!tempFind.IsDots())
{
char strFoundFileName[MAX_PATH];
strcpy(strFoundFileName, tempFind.GetFileName().GetBuffer(MAX_PATH));

if (tempFind.IsDirectory())
{
char strTempDir[MAX_PATH];
sprintf(strTempDir,"%s\\%s", strDirName, strFoundFileName);
DeleteDirectory(strTempDir);
}
else
{
char strTempFileName[MAX_PATH];
sprintf(strTempFileName,"%s\\%s", strDirName, strFoundFileName);
DeleteFile(sTempFileName);
}
}
}
tempFind.Close();
if(!RemoveDirectory(strDirName))
{
return FALSE;
}
return TRUE;
}
這個主要通過遞歸的方法,依次刪除文件,直到目錄為空,刪除目錄、文件夾。
第二種
//這是用vc的方法:

bool MyDeleteFile(char * lpszPath)
{
SHFILEOPSTRUCT FileOp={0};
FileOp.fFlags = FOF_ALLOWUNDO | //允許放回回收站
FOF_NOCONFIRMATION; //不出現確認對話框
FileOp.pFrom = lpszPath;
FileOp.pTo = NULL; //一定要是NULL
FileOp.wFunc = FO_DELETE; //刪除操作
return SHFileOperation(&FileOp) == 0;
}

void MyDialog::OnButton3()
{
// MyDeleteFile("d:\\PID\0\0"); //刪除一個文件夾
MyDeleteFile("d:\\PID.dsp\0d:\\PID.dsw\0\0"); //刪除多個文件
}

void MyDialog::OnButton3()
{
// MyDeleteFile("d:\\PID\0\0"); //刪除一個文件夾
MyDeleteFile("d:\\PID.dsp\0d:\\PID.dsw\0\0"); //刪除多個文件
}

❺ C:\Users\ADMINI~1\AppData\Local\Temp,可以刪除這個文件夾嗎

可以部分刪除,local下面的Temp文件夾內容,這是系統的臨時文件,可以刪掉。還可以刪掉Roaming文件夾系統中沒有安裝的程序的空文件夾。

C盤AppData文件夾是一個系統文件夾,裡面存儲著臨時文件,各種應用的自定義設置,快速啟動文件等。詳細步驟:

1、首先讓系統顯示隱藏文件,按win+R鍵打開運行,輸入controlfolders,如下圖所示:

❻ 怎麼用C語言刪除一個文件夾

//調用system函數並傳遞字元串參數rd
/s
/q
path(path為目錄的路徑)就行了
//下面有一個例子
#include<stdio.h>
#include<string.h>
int
main()
{
char
cmd[256]="rd
/s
/q
";
printf("請輸入要刪除的目錄的路徑:");
//將目錄的路徑連接到cmd的後面
gets(cmd+strlen(cmd));
if(0==system(cmd))
printf("目錄已刪除,請注意查看!\n");
return
0;
}

❼ 怎麼用C語言刪除一個文件夾

可以用 rmdir() 函數,需要包含頭文件 direct.h, 還有一點需要注意,文件夾內是空的才可以刪除掉。下面是一個刪除d: emp文件夾,代碼如下:

#include<stdio.h>
#include<stdlib.h>
#include<direct.h>

intmain()
{
rmdir("D:\temp");

system("pause");
return0;
}

❽ c語言怎麼刪除一個文件夾里的所有文件

比如說你要刪除所有C盤中的文件:
system("del *.*");
del是DOS下的刪除命令, *.*這個我不用解釋了吧?

❾ c:\windows文件夾里哪些東西是可以刪除的

C盤都是系統文件,刪錯很容易出問題,可以使用系統自帶的清理程序進行清理。

如下參考:

1.單擊桌面左下角的「開始」菜單,然後單擊「設置」圖標。

❿ c語言怎麼刪除文件夾里所有文件

如果想簡單
就直接調用系統命令
比如 windows下
system("delete xxxx\\*");
Linux下
system("rm xxxx/*")

如果想用純C介面
先opendir
然後循環遍歷readdir
依次調用remove 函數刪除文件。

熱點內容
安卓怎麼關閉美易訂閱 發布:2024-05-18 19:29:16 瀏覽:642
蘋果手機配置代理伺服器怎麼開 發布:2024-05-18 19:29:07 瀏覽:229
伺服器屏蔽了別人的ip 發布:2024-05-18 19:10:09 瀏覽:619
怎麼獲取ins伺服器地址 發布:2024-05-18 19:10:03 瀏覽:30
仙方一般是什麼配置 發布:2024-05-18 18:53:43 瀏覽:159
黑莓安卓手機主題下載到哪裡 發布:2024-05-18 18:47:18 瀏覽:57
湯靖軒編程 發布:2024-05-18 18:46:04 瀏覽:533
腳本故事梗 發布:2024-05-18 18:29:02 瀏覽:823
安卓和csharp哪個發展好 發布:2024-05-18 18:09:30 瀏覽:527
換編程題庫 發布:2024-05-18 18:00:58 瀏覽:562