在c/c++中刪除檔案有三種方式,假設檔案路徑及名稱為d:/123.txt,unicode編碼
第一種,利用系統system函式呼叫del函式刪除檔案。
1 cstring strtemp; //記錄檔案路徑及名稱
2strtemp.empty();
3 strtemp.format(_t("
del %s
"),_t("
d:/123.txt
"));
4 system((cw2a)strtemp);
這種方式有個不好的地方時,會彈出dos的黑框,一閃而過,無法做到無痕跡。
第二種,利用c/c++的內部函式,deletefile(lpctstr lppath);
這裡引數為lpctstr型別的,內部有兩個重構的函式,分別對應著unicode和ansi的,這裡如果lppath是cstring型別的,可直接帶入,如需轉換。
第三種,利用函式int shfileoperation(lpshfileopstruct lpfileop
);有原型可以看出來,引數指向乙個shfileopstruct結構體。
typedef struct_shfileopstruct shfileopstruct, *lpshfileopstruct;
hwnd是window 控制代碼,wfunc可以取值如下:
fo_copyfo_delete
fo_move
fo_rename
分別對應著檔案複製,刪除,移動,重新命名。
pform檔案的路徑,pto一般取null,fflags取值如下:
fof_allowundofof_noconfirmation
fof_noconfirmmkdir
fof_nocopysecurityattribs
fof_noerrorui
fof_norecursion
fof_renameoncollision
最後函式呼叫方式是:
shfileopstruct fileop;
…… // 填充結構體
shfileoperation(&fileop);
c c 建立刪除檔案操作
最近溫習c語言功課,一直為返回字串陣列問題所困擾,網搜無完整應用資訊,不得其法,經過不斷實踐修改,略有所悟,記錄如下 char funfilepath char arrfilename,int nlength int createfile char contenttxt,int nlength in...
C C 中的檔案操作
1.fopen fopen的原型是 file fopen const char filename,const char mode fopen實現三個功能 為使用而開啟乙個流 把乙個檔案和此流相連線 給此流返回乙個file指標 引數filename指向要開啟的檔名,mode表示開啟狀態的字串,其取值如...
git中刪除檔案
刪除檔案,這裡我們假定兩種情況 一種是誤刪,另一種是確實要刪除。1 如果是誤刪,當用rn 檔案,將工作區中的某個檔案誤刪時,可以用git checkout 檔案。撤銷掉刪除 其實,刪除也可以看做是對檔案的一種修改 也可以說是用版本庫中的版本替換樂工作區中的版本。2 如果要刪除某個檔案,就必須從已跟蹤...