一、檔案
文字檔案是以行為單位進行讀、寫操作的。文字檔案只能單獨為讀或寫而開啟,在乙個開啟的文字檔案上同時進行讀、寫操作是不允許的。
二、定義
filestream: tfilestream;
三、開啟檔案
filestream:= tfilestream.
create(afilename:
string
; mode: word);
引數afilename:檔名;引數mode:檔案開啟的方式。
mode由開啟模式與共享模式組成,取值見下表:
分類
引數
說明
打 開
模 式
fmcreate
建立檔案, 如果指定檔名的檔案已經存在,則以寫模式開啟
fmopenread
唯讀開啟
fmopenwrite
以寫模式開啟檔案,寫到檔案的內容將替換檔案以前的內容
fmopenreadwrite
讀寫開啟
共 享
模 式
fmsharecompat
共享模式, 相容 dos
fmshareexclusive
他的應用程式不能開啟該檔案
fmsharedenywrite
其他的應用程式只能以只寫方式開啟
fmsharedenyread
其他的應用程式只能以唯讀方式開啟
fmsharedenynone
其他的應用程式可以以任何方式開啟檔案
四、讀寫檔案
function
read(
varbuffer;count:
longint
):longint
; //從檔案流當前位置讀count位元組到緩衝區buffer;
function
write
(const
buffer;count:
longint
):longint
; //將緩衝區buffer的count個位元組的資料寫到檔案流當前位置中,覆蓋該位置後面的count個位元組的資料;
function
seek(offset:
longint
;origin:
word
):longint
; //設定檔案流當前讀寫指標位置,origin=
function
copyfrom(source:tstream;count:
longint
):longint
; //從另一檔案流中當前位置複製count到當前檔案流當前位置;
八、關閉檔案
檔案的關閉須呼叫freeandnil(filestream)。
//乙個例項
/type
tbuffer = array
[0..16000]of
char
procedure
getmessagefromdir( afilename:
string
; var
abuffer: tbuffer);
varfilestream: tfilestream;
begin
filestream:=tfilestream.
create(afilename,fmshareexclusive);
filestream.
position:=
0;
filestream.
read(abuffer,sizeof(abuffer));
freeandnil(filestream);
end;
procedure
putmessagetodir(afilename:
string
; astr :
string
);
varfilestream: tfilestream;
tempbuffer:tbuffer;
begin
strpcopy(tempbuffer,astr);
filestream:=tfilestream.
create(afilename,fmshareexclusive
orfmcreate);
filestream.
position:=
0;
filestream.
write(tempbuffer,length(astr));
freeandnil(filestream);
end;
//乙個例項
//乙個例項:讀取流中的資料,顯示
/type
tform1 = class
(tform)
img1: timage;
procedure
formshow(sender: tobject);
private
public
fstream:tfilestream;
end;
varform1: tform1;
filename:string
= '.\weimir.uib'
; implementation
procedure
tform1
.formshow(sender: tobject);
varbmp:tbitmap;
begin
fstream:=tfilestream.
create(filename,fmopenread);
fstream.
seek(
0,sofrombeginning);
bmp:=tbitmap.
create;
bmp.
loadfromstream(fstream);
img1.
picture
.bitmap:=bmp;
end;
end.
Delphi 02 Delphi程式的結構
一 工程檔案 program multiunit uses sysutils,unit1 in unit1.pas begin 引用unit1中的變數,因為是在介面部分定義所以可以引用 strgreet hello world 呼叫unit1中的過程 因為是在介面部分定義所以可以引用 greetin...
delphi讀音 delphi漢字轉拼音
loading.function getpyindexchar hzchar string char begin 的到乙個漢字的拼音頭個字母 case word hzchar 1 shl 8 word hzchar 2 of b0a1.b0c4 result a b0c5.b2c0 result b...
delphi中的指標
從最初的 pascal 發展至今 的object pascal 可以說在指標運用上,絲毫不會遜色於 c語言的指標。以下內容分為八個部分,分別是 一 型別指標的定義 二 無型別指標的定義 三 指標的解除引用 四 取位址 指標賦值 五 指標運算 六 動態記憶體分配 七 字元陣列的運算 八 函式指標 對於...