關於findfirst 函式 |
答題得分者是:jow
|
cat200188
中階會員 發表:37 回覆:78 積分:68 註冊:2005-01-18 發送簡訊給我 |
|
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
|
cat200188
中階會員 發表:37 回覆:78 積分:68 註冊:2005-01-18 發送簡訊給我 |
|
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
參考這一篇, 雖然是用Delphi寫的, 可是在FindFirst()的用法上類似.
建議你把所有檔名抓到一個 TStringList 中, 再來隨機取得檔名... 例如: Index = ramdom(List->Count); //0~List->Count-1 List->Strings[Index] ----> 取得檔名 個人見解, 僅供參考........ ===================引 用 cat200188 文 章=================== 喔,這個方法我也想過,但想偷懶,有直接用findfirst的隨機讀檔功能嗎 |
cat200188
中階會員 發表:37 回覆:78 積分:68 註冊:2005-01-18 發送簡訊給我 |
|
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
取得全部檔名後, 這是所需資料處理的結果, 例如 List.
在操作部分則可以自List 複製一份資料來用 (手寫Delphi code) var L: TStringList; Index: Integer; FileName: string; L := TStringList.Create; try L.Text = List.Text; while L.Count > 0 do begin Index := Random(L.Count); FileName := L[Index]; //處理檔案 L.Delete(Index); end; finally FreeAndNil(L); end; ===================引 用 cat200188 文 章=================== 再請問用例如: Index = ramdom(List->Count); //0~List->Count-1 List->Strings[Index] ----> 取得檔名 如果檔案有15筆,我用亂數產生15次,如何確保抓取的檔案不會重覆,如 List->Strings[13]跑過一次,下次我不會再讓它跑出來 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |