Delphi上的檔案操作(摘)

2022-03-31 10:34:50 字數 3065 閱讀 2636

一、使用filestream

例1、code

varqfilestream:   tfilestream;   

buffer:   

string

;   

begin

qfilestream   :

=tfilestream.create(

'test.txt

',   fmcreate);

qfilestream.seek(

0,   sofromend);   

buffer   :='

i   here   add   a   string';

//寫入檔案的字串   

qfilestream.write(buffer[

1],   length(buffer));

//緩衝區首址   and   寫入個數。   

length(buffer));這樣也行   

qfilestream.free;

//別忘了釋放   

end;   

//read

varqfilestream:   tfilestream;   

buffer:   

string

;   

qfilesize:   integer;   

begin

qfilestream   :

=tfilestream.create(

'test.txt

',   fmopenread);   

qfilesize   :

=qfilestream.seek(

0,   sofromend);   

setlength(buffer,   qfilesize);

//設定你要讀的字元個數。   

qfilestream.seek(

0,   sofrombeginning);   

qfilestream.read(pchar(buffer)^,   qfilesize);   

qfilestream.free;   

memo1.text   :

=buffer;   

end;   

例子2、

procedure filecopy( const sourcefilename, targetfilename: string ); 

var 

s, t: tfilestream; 

begin 

s :=

tfilestream.create( sourcefilename, fmopenread ); 

tryt :

=tfilestream.create( targetfilename,fmopenwrite 

orfmcreate ); 

tryt.copyfrom(s, s.size ) ; 

finally

t.free; 

end; 

finally

s.free; 

end; 

end; 

二、使用textfile

①讀取檔案內容。在以讀的方式開啟檔案後,可以使用read和readln語句來讀取檔案內容,其宣告**格式分別為: 

read和readln的區別為後者在讀取資料後,將檔案指標移至下一行,上次讀取的資料與回車符之間的資料被忽略。

當讀取字串時,必須用readln過程,否則讀完一行資料後,再使用read讀取字串將得到空串。

當讀取整型和實型資料時,檔案中的資料用空格分隔,且必須符合資料格式,否則將產生i/o錯誤。

在讀取檔案時,還必須判斷檔案指標是否已到檔案尾部,此時可以用eof函式進行判斷,其宣告**如下:

function eof(f):boolean;

當檔案指標指到尾部時,該函式返回值為true。

②向檔案寫入資料。以寫的方式開啟檔案後,即可向其中寫入資料,寫人資料使用write和 

writeln(f,text)

(4)使用檔案變數關閉檔案 

closefile(f);

關閉檔案後,系統釋放開啟檔案時使用的資源。特別是寫檔案時,在呼叫write和writeln過程時,資料先寫入記憶體緩衝區,只有在緩衝區滿或關閉檔案時,才把資料真正寫入磁碟檔案中,因此寫完資料後不關閉檔案可能丟失資料。

寫檔案:

procedure

tfrmzcgl.addtofile(filename, content: 

string

);var

strtime:

string

;textf:textfile;

begin

strtime:

=datetostr(now)+'

'+timetostr(now);

assignfile(textf,filename);

ifnot

fileexists(filename) 

then

begin

showmessage(pchar(filename+'

不存在,建立新檔案

'));

rewrite(textf);

end+''

+strtime);

closefile(textf);

end;

讀檔案:

procedure

readfile(sender: tobject);  

//讀檔案

varrtext: textfile;

tmp:string;

begin

richedit2.clear;

//清除原來的內容

assignfile(rtext, 

'ip.txt');

reset(rtext);

while

noteof(rtext) 

dobegin

readln(rtext,tmp);

richedit2.lines.add(tmp);

end;

closefile(rtext);

end; 

Delphi 檔案操作的封裝

unit fileoper inte ce uses windows,shellapi,sysutils type tfileoper class public class function winerasefile owner integer wichfiles string sendtorecy...

Delphi 操作Ini檔案

delphi提供了乙個tinifile類,使我們可以非常靈活的處理ini檔案 一 ini檔案的結構 小節名 ini檔案 關鍵字1 值1 關鍵子2 值2 ini檔案允許有多個小節,每個小節又允許有多個關鍵字,後面是該關鍵字的值。值的型別有三種 字串 整型數值和布林值。其中字串存貯在ini檔案中時沒有引...

delphi操作ini檔案

如何操作ini檔案?ini 檔案在系統配置及應用程式引數儲存與設定方面,具有很重要的作用,所以視覺化的程式設計一族,如 vb vc vfp delphi 等都提供了讀寫 ini 檔案的方法,其中delphi中操作 ini 檔案,最為簡潔,這是因為delphi3提供了乙個 tinifile 類,使我們...