[問題] 關於C/C++ 檔案處理

看板C_and_CPP作者 (JIZZUZ)時間10年前 (2013/12/28 21:22), 編輯推噓1(108)
留言9則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev C++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) none 問題(Question): 各位大師好!小弟有一個情況 我現在手上有一份名單List,內含一連串的檔名 例如: Isuck.exe beaches.doc mybad.txt . . . . 等等。 而我的工作就是確保"D:\Company_database" 該資料夾不會出現名單以外的"幽靈檔案" 不過刪除檔案我會(使用remove)改寫檔名我也會(用rename) 我原本的概念是寫一個C program 將資料夾內所有的檔案一一讀取後 跟list裡的擋名一一確認,若沒有在list裡就刪除該檔案 但這就是困擾我的地方...fpoen一定要知道檔名才能開啟 但除了list裡"要保留"的檔名,我並"不知道"其它"要刪除的檔案"的檔名 請問有高手知道要用什麼function嗎?煩請題點一下,細部我會自行努力的 先謝了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.147.23.233

12/28 21:29, , 1F
這用途的話我會想用python...
12/28 21:29, 1F

12/28 21:31, , 2F
if filename not in os.listdir: os.remove(filename)
12/28 21:31, 2F

12/28 21:33, , 3F
囧,上面那行是錯的,你要把名單外的檔案幹掉的話是這樣
12/28 21:33, 3F

12/28 21:33, , 4F
for file in os.listdir(path):
12/28 21:33, 4F

12/28 21:34, , 5F
if file not in my_list: os.remove(path+'\\'+file)
12/28 21:34, 5F

12/28 21:38, , 6F
這裡是 C/C++ 版就回一點 C/C++ 的做法吧:
12/28 21:38, 6F

12/28 21:38, , 7F
Win32 API 有 FindFirstFile 及 FindNextFile 可以達成目標
12/28 21:38, 7F

12/28 22:09, , 8F
謝謝各位,我會試試看的
12/28 22:09, 8F

12/28 22:12, , 9F
12/28 22:12, 9F
文章代碼(AID): #1Ilj2Sv0 (C_and_CPP)