在delphi中,定位檔案的操作主要有兩種方法。一種是直接定位檔案,即通過「開啟」對話方塊(opendialog)控制項來實現。另一種是只定位到資料夾,然後再在此資料夾內尋找檔案,這種定位方法是利用delphi提供的selectdirectory函式。這個函式是在filectrl單元中定義的,因此在使用時不要忘記在uses中加入單元名。
下面就以乙個例子來說明這兩種方法在delphi中的具體實現:
首先建立乙個新的工程,然後在窗體上加入兩個按鈕控制項、乙個「開啟」對話方塊,再加入兩個標籤控制項作為兩種實現結果的儲存控制項。
各個控制項的主要屬性設定如下:
button1中:
caption='直接定位檔案'
button2中:
caption='定位到資料夾'
opendialog1中:
filter= '所有檔案(*.*)|*.*|'
+'文字檔案(*.txt)|*.txt|'
+'應用程式(*.exe,*.com)|*.exe;*.com'
filterindex=1
下面是實現的具體程式**:
unit filelocateunit1;
inte***ce
uses
……,filectrl;
type
tform1 = class(tform)
button1: tbutton;
…… implementation
//直接定位到檔案的實現**
procedure tform1.button1click(sender: tobject);
begin
opendialog1.execute;
//執行「開啟」檔案對話方塊
label1.caption:=opendialog1.filename;
//將返回的結果值傳遞給控制項label1
//要注意,只有當使用者選擇了乙個檔案並且按了「確定」按鈕後才能返回此結果。
label1.refresh;
end;
//定位到資料夾的實現**
procedure tform1.button2click(sender: tobject);
var
strcaption,strdirectory:string;
wstrroot:widestring;
begin
strcaption:='這是瀏覽資料夾的說明文字,可以根據需要進行書寫。'
+#13#10+'一般二行文字就滿了。';
//該引數是瀏覽資料夾視窗的顯示說明部分
wstrroot:='';
//這個引數表示所顯示的瀏覽資料夾視窗中的根目錄,預設或空表示「我的電腦」。
selectdirectory(strcaption,wstrroot,strdirectory);
label2.caption:=strdirectory;
//傳遞結果,其中引數strdirectory表示函式的返回值
label2.refresh;
end;
end.
按f9編譯執行上面的**。
從兩種方法的比較來看,如果想讓使用者直觀地選擇檔案,我們可以使用「開啟」對話方塊控制項;如果只想定位到資料夾,或者想將程式訪問的檔案對使用者保密,我們應選擇函式selectdirectory作為實現的手段。
另外,如果想限制使用者定位檔案的許可權,最好使用函式selectdirectory來實現,因為它通過使用root引數限定了根目錄的位置,並且不能再向上返回。圖2是限定根目錄為c:/program files/borland/delphi5的情況,這樣就可以更好地避免使用者誤操作,而使用「開啟」對話方塊控制項則不能實現這一要求。
在檔案中的指定位置寫入資料
筆者的應用場景 將影象指定區域的畫素值按其空間位置寫到 txt 檔案中。int hang 4 矩陣行數 int lie 8 矩陣列數 先在txt檔案中構造乙個空矩陣,然後向該矩陣中指定行列寫入個位數 intmain10 for int i 1 i hang i fclose filp while 1...
使用sed在檔案指定位置插入文字
在檔案的第二行插入一行文字 sed i 2 i 一行文字 my1.txt sed i 2i a new line my1.txt在檔案的最後一行新增一行文字 sed i a 一行文字 my2.txt sed i a a new line my2.txt在檔案匹配的模式行後新增一行文字 r 支援正規表...
在指定位置插入字元
下列給定程式中,函式fun的功能是 在形參s所指字串中尋找與引數c相同的字元,並在其後插入乙個與之相同的字元,若找不到相同的字元則不做任何處理。例如,若s所指字串為 baacda c中的字元為a,執行後s所指字串為 baaaacdaa 請在程式的下畫線處填入正確的內容並將下畫線刪除,使程式得出正確的...