(a)指定檔案查詢
function tform1.findspecfile(sdirectory,fname:string):boolean;
var sr: tsearchrec ;
begin
if findfirst(sdirectory+fname, faanyfile, sr) = 0 then
begin
findclose(sr);
result:=true;
end else begin
result:=false;
end;
end;
(b)檔名包含查詢
procedure tform1.findlikefile(sdirectory,likename:string);
var sr: tsearchrec;
begin
if findfirst(sdirectory+'*.*', faanyfile, sr) = 0 then
begin
repeat
if pos(likename,lowercase(sr.name))>0 then begin
if (sr.attr and fadirectory)=0 then
listbox1.items.add('檔案:'+sdirectory+sr.name)
else
listbox1.items.add('目錄:'+sdirectory+sr.name) ;
end;
until findnext(sr) <> 0;
findclose(sr);
end;
end;
(1)查詢指定副檔名的檔案
procedure tform1.button1click(sender: tobject);
var sr: tsearchrec;
begin
listbox1.items.clear ;
if findfirst('d:/work/*.xls', faanyfile, sr) = 0 then
begin
repeat
if pos('.xls',lowercase(sr.name))>0 then
listbox1.items.add(sr.name) ;
until findnext(sr) <> 0;
findclose(sr);
end;
end;
或procedure tform1.button1click(sender: tobject);
begin
listbox1.items.clear ;
findlikefile('d:/work/','xls');
end;
(2)查詢某目錄下的所有檔案,非目錄
procedure tform1.button2click(sender: tobject);
var sr: tsearchrec;
begin
listbox1.items.clear ;
if findfirst('d:/work/*.*', faanyfile, sr) = 0 then
begin
repeat
if (sr.attr and fadirectory)=0 then
listbox1.items.add(sr.name+ ' '+inttostr(sr.attr)) ;
until findnext(sr) <> 0;
findclose(sr);
end;
showmessage(inttostr(listbox1.items.count));
end;
(3)查詢某目錄下的所有目錄,包含 「.」 「..」
procedure tform1.button2click(sender: tobject);
var sr: tsearchrec;
begin
listbox1.items.clear ;
if findfirst('d:/work/*.*', faanyfile, sr) = 0 then
begin
repeat
if (sr.attr and fadirectory)<>0 then
listbox1.items.add(sr.name+ ' '+inttostr(sr.attr)) ;
until findnext(sr) <> 0;
findclose(sr);
end;
showmessage(inttostr(listbox1.items.count));
end;
(4)查詢某目錄下的指定檔案,包含子目錄
procedure tform1.button1click(sender: tobject);
//逐層目錄第歸
procedure findsubdir(parentdir:string);
var sr: tsearchrec; sdir:string;
begin
//(1)查詢當前目錄
statusbar1.******text := parentdir;
findspecfile(parentdir,'test.txt'); //(a)指定檔案查詢
//findlikefile(parentdir,'test'); //(b)檔名包含查詢
//(2)第歸查詢子目錄
if findfirst(parentdir+'*.*', faanyfile, sr) = 0 then
begin
repeat
if (sr.name='..')or(sr.name='.') then continue;
if (sr.attr and fadirectory)<>0 then
begin
sdir:=parentdir+sr.name+'/';
findsubdir(sdir); //逐層第歸
end;
until findnext(sr) <> 0;
findclose(sr);
end;
end;
varsr: tsearchrec; sdir:string;
begin
screen.cursor := crhourglass;
listbox1.items.clear ;
trysdir:='d:/back/'; //初始目錄
findsubdir(sdir);
if listbox1.items.count >0 then
statusbar1.******text :='共找到個'+inttostr(listbox1.items.count)+'檔案'
else
statusbar1.******text :='沒有找到檔案';
finally
screen.cursor := crdefault;
end;
end;
查詢的幾種方法
1.get and load quote session.get clazz,id session.load clazz,id quote 說明 load 與get 的區別 請注意如果沒有匹配的資料庫記錄,load 方法可能丟擲無法恢復的異常 unrecoverable exception 如果類的...
iOS 獲取檔案的目錄路徑的幾種方法
iphone沙箱模型的有四個資料夾,分別是什麼,永久資料儲存一般放在什麼位置,得到模擬器的路徑的簡單方式是什麼.nshomedirectory 手動儲存的檔案在documents檔案裡 nsuserdefaults儲存的檔案在tmp資料夾裡 1 documents 目錄 您應該將所有的應用程式資料檔...
iOS 獲取檔案的目錄路徑的幾種方法
iphone沙箱模型的有四個資料夾,分別是什麼,永久資料儲存一般放在什麼位置,得到模擬器的路徑的簡單方式是什麼.nshomedirectory 手動儲存的檔案在documents檔案裡 nsuserdefaults儲存的檔案在tmp資料夾裡 1 documents 目錄 您應該將所有的應用程式資料檔...
iOS 獲取檔案的目錄路徑的幾種方法
iphone沙箱模型的有四個資料夾,分別是什麼,永久資料儲存一般放在什麼位置,得到模擬器的路徑的簡單方式是什麼.nshomedirectory 手動儲存的檔案在documents檔案裡 nsuserdefaults儲存的檔案在tmp資料夾裡 1 documents 目錄 您應該將所有的應用程式資料檔...
C 獲取目錄的幾種方法
來至 獲取程式的基目錄。獲取模組的完整路徑。system.diagnostics.process.getcurrentprocess mainmodule.filename 可獲得當前執行的exe的檔名。獲取和設定當前目錄 該程序從中啟動的目錄 的完全限定目錄。system.environment....