全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2030
推到 Plurk!
推到 Facebook!

FileDateToDateTime的問題!

答題得分者是:sos_admin
piggy213
一般會員


發表:16
回覆:6
積分:4
註冊:2002-12-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-17 15:55:45 IP:211.74.xxx.xxx 未訂閱
我這段程式的目的是找出某目錄下(目錄不定,讓user選的)更新過的檔案,並複製到另一指定目錄去。 可是程式跑到第13行時,就出現"Invalid argument to date encode"這樣的error! 我一直找不出原因...可以請各位大師幫我看看嗎? 謝謝!! ps.若我指定檔案就沒問題ex.FileDateToDateTime(FileAge('c:\Temp\test.txt')) 可換成13行的樣子就不行!    
1.  procedure TForm1.Button1Click(Sender: TObject);
2   var i: Integer;
3       dt: TDateTime;
4.      ps: TDateTime;
5.      S1, M: String;
6.      sDir, s2Dir, tDir: String;
7   begin
8       sDir := DirectoryListBox1.Directory   '\';
9       tDir := DirectoryListBox2.Directory   '\';
10      for i := 0 to FileListBox1.Items.Count - 1 do
11      begin
12         S1 := FileListBox1.Items.Strings[i];
13         dt := FileDateToDateTime(FileAge(FileListBox1.Items[i]));
14         if dt >= (Now - 1) then // 檔案時間大於前一天者
15         begin
16             s2Dir := sDir   FileListBox1.Items[i];
17             tDir := DirectoryListBox2.Directory   FileListBox1.Items[i];
18             Windows.CopyFile(PChar(s2Dir),PChar(tDir),false);
19           end;
20        end;
21  end;  
Rain
資深會員


發表:31
回覆:236
積分:268
註冊:2003-02-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-17 16:39:44 IP:220.160.xxx.xxx 未訂閱
DirectoryListBox1的FileList屬性設了嗎?如果沒有,把它設為FileListBox1應該就沒問題了 發表人 - Rain 於 2003/08/17 16:40:36
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-17 16:59:56 IP:61.155.xxx.xxx 未訂閱
piggy213 小姐:    抱歉,经过测试您的程式没有问题哦! 出现那样的原因是因为您的目录下有一个或多个没有扩展名的文件或不合法的文件所造成的错误! 一般不合法的文件几率几乎为0,可能就是因为存在没有扩展名的文件的结果! 可以用 if ExtractFileExt(FileListBox1.Items [i])<>'' then begin ..... end; 避免没有扩展名的文件哦 提醒一下: 检测文件时最好用全路经 名称,比如象这样:
系統時間:2024-05-10 14:24:45
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!