Chr 將一個有序資料轉換為一個ANSI字元
Ord 將一個有序類型值轉換為它的序號
Round 轉換一個實型值為四捨五入後的整型值
Trunc 轉換一個實型值為小數截斷後的整型值
Int 返回浮點數的整數部分
IntToStr 將數值轉換為字串
IntToHex 將數值轉換為十六進位數字串
StrToInt 將字串轉換為一個整型數,如字串不是一個合法的整型將引發異常
StrToIntDef 將字串轉換為一個整數,如字串不合法返回一個預設值
Val 將字串轉換為一個數字(傳統Turbo Pascal常式用於向後相容)
Str 將數字轉換為格式化字串(傳統Turbo Pascal常式用於向後相容)
StrPas 將零終止字串轉換為Pascal類型字串,在32位Delphi中這種類型轉換是自動進行的
StrPCopy 拷貝一個Pascal類型字串到一個零終止字串, 在32位Delphi中這種類型轉換是自動進行的
StrPLCopy 拷貝Pascal類型字串的一部分到一個零終止字串
Delphi 7.0常用函數由一句或多句程式碼群組成,可以實現某個特定的功能。使用函數可以使代碼更加易讀、易懂,加快編程速度及減少重複代碼。過程與函數類似,過程與函數最重要的區別在於,過程沒有傳回值,而函數能有傳回值。
在Delphi 7.0中,已為我們定義好了非常多的函數,大致分類有6種:資料類型轉換函式、字串、數組操作函數、檔案、磁碟操作函數、記憶體、指標操作函數、數學運算函數、日期函數。
在Delphi中調用函數,一般情況下可以直接使用函數即可,但由於有一些函數未包含在Uses中列出的單元中(預設單元有Windows,Messages,SysUtils,Variants,Classes,Graphics, Controls,Forms,Dialogs,所以需要我們手動添加單元。比如,MidStr函數就未包含在這些單元中,MidStr所屬單元在StrUtils中,因此我們將StrUtils添加Uses中即可。
在本手冊中,凡是未包含在預設列出的單元中的函數,都標明了其所屬的單元,使用時應當注意。
一、資料類型轉換函式
在我們編寫程式當中,根據不同情況,會使用到多種資料類型。當要對不同的類型進行操作時,必須要將不同的類型轉換成同樣的類型。因此熟練地掌握資料類型的轉換是非常重要的。
1.FloatToStr
功能說明:該函數用於將“浮點型”轉換成“字元型”。
參考執行個體:Edit1.Text := FloatToStr(1.981);
2.IntToStr
功能說明:該函數用於將“整數型”轉換成“字元型”。
參考執行個體:S := IntToStr(10);(註:S為String類型變數。)
3.IntToHex
功能說明:該函數用於將“十進位”轉換成“十進位”。該函數有二個參數。第一個參數為要轉換的十進位資料,第二個參數是指定使用多少位來顯示十六進位資料。
參考執行個體:Edit1.Text := IntToHex('100', 2);
執行結果,Edit1.Text等於64。
注意:Delphi沒有提供專門的“十六進位”轉換為“十進位”的函數。使用StrToInt函數可以實現這個功能。具體代碼是:I := StrToInt('S\' + '64'); 這時I等於100。加上一個'S\'即可將“十六進位”轉換為“十進位”。
4.StrToInt
功能說明:該函數用於將“字元型”轉換成“整數型”。
參考執行個體:I := StrToInt('100');
注意:不能轉換如 StrToInt('ab')或StrToInt('好')這樣的類型,因為他們並不存在數字型。
5.StrToFloat
功能說明:該函數用於將“字元型”轉換成“浮點型”。
參考執行個體:N := StrToFloat(Edit1.Text);
注意:Edit1.Text中的內容為1.981(凡在Edit控制項中顯示的文本均為字串)。N為Double類型,用於儲存轉換後的浮點型資料。
// 儲存新的字串
begin
S := 'I Love China!'; //下面將擷取I Love China中的“Love”字串。
MyStr := Copy(S, 3, 4);
end;
執行結果,MyStr等於“Love”,“Love”字串在“I
begin
S1 := Concat('A', 'B'); // 串連兩個字串,S1變數等於AB。
S2 := Concat('Borland', ' Delphi', ' 7.0'); // 串連三個字元,S2變數等於Borland Delphi 7.0。
end;
begin
S := 'I Like Reading CPCW.'; // 下面的代碼將刪除S變數中的“C”字元。
Delete(S, 16, 1);
end;
此時S變數則是I
begin
i := High(arrText); // i的值則為9
end;
begin
S := 'Wat is your name?';
// 上面句子中的What單詞查一個“h”字元,下面使用Insert函數將h添加進去。
Insert('h', S, 2); // 將“h”從第2位處插入。
end;
6.LeftStr
begin
S := 'MSN Messenger';
A := LeftStr(S, 3); // 從最左邊開始,擷取左邊的三個字元。因此A變數則等於MSN。
end;
// 用於儲存字串長度
begin
nLen1 := Length('CPCW');
nLen2 := Length('電腦報');
end;
執行結果,nLen1等於4,nLen2等於6。由於一個漢字相當於兩個字元的長度,所以3個漢字的長度為6。
begin
i:= High(arrText); // i的值則為1
end;
begin
S := 'ABC';
A := UpperCase(S); // 經過UpperCase函數轉換後,A則等於abc。
end;
10.MidStr
begin
S := MidStr('China', 1, 2); // S變數為Ch
H := MidStr('電腦報', 1, 1); // H變數為“電”。如果使用Copy函數,則應是H := Copy('電腦報, 1, 2),否則返回的將不是“電”字。因此在使用操作含有中文的字串時,最好使用MidStr。
end;
// 用於儲存尋找的字元所在位置
begin
nPos := Pos('Like', 'I Like Reading!');
end;
此時nPos等於3。如果沒有尋找到,則nPos為0。
注意:Pos函數在尋找時是要區分字元大小的。如果要實現不區分大小,那麼需要使用UpperCase或LowerCase函數將兩個參數的字元(串)轉換為“大寫”或“小寫”再進行尋找。
另外還有一個尋找字元(串)的函數----AnsiPos,該函數的使用方法與Pos函數完全一樣。當你尋找的是漢字時,最好使用AnsiPos函數。
12.RightStr
begin
S := 'MSN Messenger';
A := RightStr(S, 3); // 從最右邊開始,擷取右邊的三個字元。因此A變數則等於ger。
end;
// 定義一個動態數組
begin
SetLength(S, 10); // 當設定後,S變數只能賦值長度為10的字串。
SetLength(arrText, 10); // 這裡聲明了長度為256的Char型數組
begin
StrPCopy(arrChar, 'Come on, baby!');
end;
begin
S := ' Delphi 7.0 ';
S := Trim(S);
end;
16.TrimLeft
功能說明:刪除字串左邊的空格(無論左邊有多少個空格均被全部刪除)。
參考執行個體:S := TrimLeft(' Delphi');
17.TrimRight
功能說明:刪除字串左邊的空格(無論左邊有多少個空格均被全部刪除)。
參考執行個體:S := TrimRight('Delphi ');
begin
S := 'abc';
A := UpperCase(S); // 經過UpperCase函數轉換後,A則等於ABC。
end;
begin
S := 'This is a book.';
AssignFile(F, // 以追加的方式開啟檔案
Writeln(F, S); // 將S變數中的內容追加到文本尾後。
CloseFile(F); // 關閉檔案
end;
begin
sDir :=
ChDir(sDir);
begin
AssignFile(F, // 開啟檔案
while not EOF(F) do begin // 使用While迴圈,一直判斷是否到了檔案未尾
Readln(F, S); // 讀取一行文本
AllText := AllText + S;
end;
CloseFile(F); // 關閉檔案
end; // 用於儲存刪除狀態
begin
IsOK := // 函數執著後,將結果返回給IsOK變數。如果IsOK變數為True,則表示檔案刪除成功。
if IsOK then ShowMessage('檔案刪除成功!')
else ShowMessage('檔案刪除失敗!');
end;
begin
IsExists :=
if IsExists then ShowMessage('Windows檔案夾存在!')
else ShowMessage('Windows檔案夾不存在!');
end;
begin
FreeSize := DiskFree(3); // 擷取C盤中的剩餘空間。返回的值是以“位元組”為單位的。
end;
begin
DiskSize:= DiskSize(3); // 擷取C盤的空間。返回的值是以“位元組”為單位的。
end;
begin
AssignFile(F, // 開啟檔案
while not EOF(F) do begin // 使用While迴圈,一直判斷是否到了檔案未尾
Readln(F, S); // 讀取一行文本
AllText := AllText + S;
end;
end;
begin
AssignFile(F, // 開啟檔案
CloseFile(F); // 關閉檔案
Erase(F); // 刪除檔案。在刪除檔案之前必須先關閉檔案。
end;
begin
IsExists :=
if IsExists then ShowMessage('該檔案存在!')
else ShowMessage('該檔案不存在!');
end;
begin
AssignFile(F, // 開啟檔案
nSize := FileSize(F); // 擷取檔案大小。
CloseFile(F); // 關閉檔案
end; 這樣將不能成功建立MyFolder檔案夾。 // 開啟檔案
end; // 開啟檔案。如果檔案不存在,將會在C盤中建立MyFile.txt檔案。如果檔案存在,將會覆蓋MyFile.txt中的所有內容。
end;
begin
AssignFile(F, // 開啟檔案
Readln(F, S); // 讀取一行文本到S變數中
end;
begin
AssignFile(F, // 更名為NewFile.txt
end;
begin
S := 'This is a book.';
AssignFile(F, // 建立新檔案
Writeln(F, S); // 將S變數中的內容寫入文本中。
end;
begin
Buffer := AllocMem(256); // 分配大小為256個位元組的記憶體空間
end; // 聲明一個Integer(整型)指標
begin
New(P);
P^ := 100;
Dispose(P) // 釋放記憶體
end;
begin
GetMem(Buffer, 256); // 分配大小為256個位元組的記憶體空間。
FreeMem(Buffer); // 釋放記憶體空間
end;
begin
GetMem(Buffer, 256); // 分配大小為256個位元組的記憶體空間。
end; // 聲明一個Integer(整型)指標
begin
New(P); // 分配記憶體
P^ := 100; // 賦值
end;
begin
r := Abs(-2.8); // r等於 2.8
i := Abs(-156); // I 等於 156
end;
2.Exp
功能說明:Exp返回e的X次冪的值,其中e是一個自然對數基底。
參考執行個體:
e := Exp(1.0); // e為real型變數
end;
3.Floor
功能說明:取得小於等於X的最大的整數。
參考執行個體:
Floor(-2.8) = -3
Floor(2.8) = 2
Floor(-1.0) =
begin
R := Int(123.456); // R等於 123.0
R := Int(-123.456); // R等於 -123.0
end;
5.Max
begin
k := Max(10, 20); // k將為20
end;
6.Min (所在單元:Math)
本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/sforiz/archive/2010/01/24/5251416.aspx