比如一個檔案夾:newfolder
里面有檔案a.dll 修改時間:2018/7/15 18:00
b.dll 修改時間:2018/7/16 3:00
c.dll 修改時間:2018/7/15 15:00
等等等檔案
我現在想取修改時間包括2018/7/15 15:00之后得所有檔案生成新的檔案夾并按指定路徑:
version\folder1\a.dll
version\folder2\b.dll
version\folder2\c.dll
這里這個時間怎么判斷好一點,是先全部把時間過一遍,還是在取檔案的時候挨個判斷一次呢
newfolder下有很多檔案
uj5u.com熱心網友回復:
system("dir /b /a-d c:\\*.* >d:\\allfiles.txt");//讀檔案d:\\allfiles.txt的內容即C:\\下所有檔案的名字
system("dir /b /a-d /s c:\\*.* >d:\\allfilesinsub.txt");
//讀檔案d:\\allfilesinsub.txt的內容即C:\\下所有檔案的名字包含子目錄
system("dir /b /ad c:\\*.* >d:\\alldirs.txt");
//讀檔案d:\\alldirs.txt的內容即C:\\下所有子目錄的名字
請記住,能用shell命令獲取檔案、檔案夾資訊或者操作檔案、檔案夾最好用shell命令獲取或者操作,而不要用各種API獲取或者操作,因為當遇到非法檔案夾名或非法檔案名或非法檔案長度、非法檔案日期、壓縮檔案、鏈接檔案、稀疏檔案……等各種意料之外的情況時,API會處理的不全面或陷入死回圈,而shell命令不會。
如果嫌system黑視窗一閃,將system("...")替換為WinExec("cmd /c ...",SW_HIDE);
uj5u.com熱心網友回復:
用dir命令列舉檔案就不啰嗦了,自己問度娘。下面只說怎么取到具體檔案的幾個日期屬性
Set fs = CreateObject("Scripting.FileSystemObject") '創建FileSystemObject 物件
Set f = fs.GetFile("b:\123.txt") '回傳指定路徑檔案所對應的 File 物件
MsgBox f.DateCreated '創建時間
MsgBox f.DateLastModified '最后一次修改該檔案的日期和時間
MsgBox f.DateLastAccessed '最后一次訪問該檔案的日期
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/54304.html
標籤:VB基礎類
上一篇:用vba實作下拉選擇計算結果在E列輸入,E列keyin之后有紅色背景的樣式要求,如果是通過選擇D列而產生的值,不需要背景色變成紅色
