如何更準確判斷檔案產生先後 |
尚未結案
|
apang
一般會員 發表:11 回覆:20 積分:6 註冊:2003-06-23 發送簡訊給我 |
|
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
引言: 各位好... 小弟使用GetFileTime相關function取得File create-time 無獨有偶, 檔案產生時間有相同(至milliseconds都相同)... 小弟的疑問是: 檔案產生先後是否只得依照Create time作判斷? 若Create time相同就表示"同時"產生囉?? 先謝謝各位的回覆^^apang 你好: 理論上是這樣子沒有錯,但實際上這種機會不大,尤其是在同一台電腦裡面,只 是 FILETIME 裡面所記錄的 milliseconds 也會跟電腦的速度有關,現在的電腦 等級都已經很高了,你可以做一個小小的實驗,利用一個迴圈產生 10 個檔案, 你會發現有很多檔案的 CreationTime 都是相同的 < class="code"> TMemoryStream *ms=new TMemoryStream; ms->Size=1; for(int i=0; i<10; i ) { ms->SaveToFile(IntToStr(i) ".dat"); // Sleep(100); } delete ms; for(int j=0; j<10; j ) { SYSTEMTIME st; WIN32_FIND_DATA wfd; FindFirstFile((IntToStr(j) ".dat").c_str(), &wfd); FileTimeToSystemTime(&wfd.ftCreationTime, &st); Memo1->Lines->Add(IntToStr(j) ".dat CreationTime: " IntToStr(st.wYear) "/" IntToStr(st.wMonth) "/" IntToStr(st.wDay) " " IntToStr(st.wHour) ":" IntToStr(st.wMinute) ":" IntToStr(st.wSecond) ":" IntToStr(st.wMilliseconds)); } 所以,如果這些檔案是你自己產生的話,建議在每產生一個檔案以後就 Delay 一段時間 (把上面紅色那一行的 mark 拿掉),這樣方便以後判斷時間的先後 -- Enjoy Researching & Developing -- 發表人 - RaynorPao 於 2003/10/30 16:25:21
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
apang
一般會員 發表:11 回覆:20 積分:6 註冊:2003-06-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |