delphi內部函數大全

名稱                        類型         說明
----------------------------------------------------------------------------------
Abort                       函數         引起放棄的意外處理
Abs                         函數         絕對值函數
AddExitProc                 函數         將一過程添加到運行時庫的結束過程表中
Addr                        函數         返回指定對象的地址
AdjustLineBreaks            函數         將給定字符串的行分隔符調整爲CR/LF序列
Align                       屬性         使控件位於窗口某部分
Alignment                   屬性         控件標籤的文字位置
AllocMem                    函數         在堆棧上分配給定大小的塊
AllowGrayed                 屬性         允許一個灰度選擇
AnsiCompareStr              函數         比較字符串(區分大小寫)
AnsiCompareText             函數         比較字符串(不區分大小寫)
AnsiLowerCase               函數         將字符轉換爲小寫
AnsiUpperCase               函數         將字符轉換爲大寫
Append                      函數         以附加的方式打開已有的文件
ArcTan                      函數         餘切函數
AssignFile                  函數         給文件變量賦一外部文件名
Assigned                    函數         測試函數或過程變量是否爲空
AutoSize                    屬性         自動控制標籤的大小
BackgroundColor             屬性         背景色
BeginThread                 函數         以適當的方式建立用於內存管理的線程
BevelInner                  屬性         控件方框的內框方式
BevelOuter                  屬性         控件方框的外框方式
BevelWidth                  屬性         控件方框的外框寬度
BlockRead                   函數         讀一個或多個記錄到變量中
BlockWrite                  函數         從變量中寫一個或多個記錄
BorderStyle                 屬性         邊界類型
BorderWidth                 屬性         邊界寬度
Break                       命令         終止for、while、repeat循環語句
Brush                       屬性         畫刷
Caption                     屬性         標籤文字的內容
ChangeFileExt               函數         改變文件的後綴
ChDir                       函數         改變當前目錄
Checked                     屬性         確定複選框選中狀態
Chr                         函數         返回指定序數的字符
CloseFile                   命令         關閉打開的文件
Color                       屬性         標籤的顏色
Columns                     屬性         顯示的列數
CompareStr                  函數         比較字符串(區分大小寫)
Concat                      函數         合併字符串
Continue                    命令         繼續for、while、repeat的下一個循環
Copy                        函數         返回一字符串的子串
Cos                         函數         餘弦函數
Ctl3D                       屬性         是否具有3D效果
Cursor                      屬性         鼠標指針移入後的形狀
Date                        函數         返回當前的日期
DateTimeToFileDate          函數         將DELPHI的日期格式轉換爲DOS的日期格式
DateTimeToStr               函數         將日期時間格式轉換爲字符串
DateTimeToString            函數         將日期時間格式轉換爲字符串
DateToStr                   函數         將日期格式轉換爲字符串
DayOfWeek                   函數         返回星期的數值
Dec                         函數         遞減變量值
DecodeDate                  函數         將日期格式分解爲年月日
DecodeTime                  函數         將時間格式分解爲時、分、秒、毫秒
Delete                      函數         從字符串中刪除子串
DeleteFile                  命令         刪除文件
DiskFree                    函數         返回剩餘磁盤空間的大小
DiskSize                    函數         返回指定磁盤的容量
Dispose                     函數         釋放動態變量所佔的空間
DisposeStr                  函數         釋放字符串在堆棧中的內存空間
DitherBackground            屬性         使背景色的色彩加重或減少50%
DragCursor                  屬性         當鼠標按下時光標的形狀
DragMode                    屬性         按動的作用方式
DropDownCount               屬性         容許的顯示數據項的數目
EditMask                    屬性         編輯模式
Enabled                     屬性         是否使標籤呈現打開狀態
EncodeDate                  函數         將年月日合成爲日期格式
EncodeTime                  函數         將時、分、秒、毫秒合成爲時間格式
EndMargin                   屬性         末尾邊緣
Eof                         函數         對有類型或無類型文件測試是否到文件尾
Eoln                        函數         返回文本文件的行結束狀態
Erase                       命令         刪除外部文件
ExceptAddr                  函數         返回引起當前意外的地址
Exclude                     函數         從集合中刪除一些元素
ExceptObject                函數         返回當前意外的索引
Exit                        命令         立即從當前的語句塊中退出
Exp                         函數         指數函數
ExpandFileName              函數         返回包含絕對路徑的字符串
ExtendedSelect              屬性         是否允許存在選擇模式,True時,MultiSelect纔有意義
ExtractFileDir              函數         返回驅動器和路徑
ExtractFileExt              函數         返回文件的後綴
ExtractFileName             函數         返回文件名
ExtractFilePath             函數         返回指定文件的路徑
FileAge                     函數         返回文件已存在的時間
FileClose                   命令         關閉指定的文件
FileCreate                  命令         用指定的文件名建立新文件
FileDateToDateTime          函數         將DOS的日期格式轉換爲DELPHI的日期格式
FileExists                  函數         檢查文件是否存在
FileGatAttr                 函數         返回文件的屬性
FileGetDate                 函數         返回文件的DOS日期時間標記
FileOpen                    命令         用指定的存取模式打開指定的文件
FilePos                     函數         返回文件的當前指針位置
FileRead                    命令         從指定的文件讀取
FileSearch                  命令         在目錄中搜索指定的文件
FileSeek                    函數         改變文件的指針
FileSetAttr                 函數         設置文件屬性
FileSetDate                 函數         設置文件的DOS日期時間標記
FileSize                    函數         返回當前文件的大小
FileWrite                   函數         對指定的文件做寫操作
FillChar                    函數         用指定的值填充連續字節的數
FindClose                   命令         終止FindFirst/FindNext序列
FindFirst                   命令         對指定的文件名及屬性搜索目錄
FindNext                    命令         返回與文件名及屬性匹配的下一入口
FloatToDecimal              函數         將浮點數轉換爲十進制數
FloatToStrF                 函數         將浮點數轉換爲字符串
FloatToStr                  函數         將浮點數轉換爲字符串
FloatToText                 函數         將給定的浮點數轉換爲十進制數
FloatToTextFmt              函數         將給定的浮點數轉換爲十進制數
Flush                       函數         將緩衝區的內容刷新到輸出的文本文件中
FmtLoadStr                  函數         從程序的資源字符串表中裝載字符串
FmtStr                      函數         格式化一系列的參數,其結果以參數Result返回
Font                        屬性         設置字體
Format                      函數         格式化一系列的參數並返回Pascal字符串
FormatBuf                   函數         格式化一系列的參數
FormatDateTime              函數         用指定的格式來格式化日期和時間
FormatFloat                 函數         指定浮點數格式
Frac                        函數         返回參數的小數部分
FreeMem                     函數         按給定大小釋放動態變量所佔的空間
GetDir                                   返回指定驅動器的當前目錄
GetHeapStatus                            返回內存管理器的當前狀態
GetMem                                   建立一指定大小的動態變量,並將指針指向該處
GetMemoryManager                         返回內存管理器的入口點
Glyph                       函數         按鈕上的圖象
Halt                                     停止程序的執行並返回到操作系統
Hi                                       返回參數的高地址位
High                                     返回參數的上限值
Hint                        屬性         提示信息
Int                                      返回參數的整數部分
Include                                  添加元素到集合中
Insert                                   在字符串中插入子串
IntToHex                                 將整型數轉換爲十六進制數
IntToStr                                 將整型數轉換爲字符串
IOResult                                 返回最新的I/O操作完成狀態
IsValidIdent                             測試字符串是否爲有效的標識符
Items                       屬性         默認顯示的節點
Kind                        屬性         擺放樣式
LargeChange                 屬性         最大改變值
Layout                      屬性         圖象佈局
Length                      函數         返回字符串的動態長度
Lines                       屬性         缺省顯示內容
Ln                          函數         自然對數函數
Lo                          函數         返回參數的低地址位
LoadStr                     函數         從應用程序的可執行文件中裝載字符資源
LowerCase                   函數         將給定的字符串變爲小寫
Low                         函數         返回參數的下限值
Max                         屬性         最大值
MaxLength                   屬性         最大長度
Min                         屬性         最小值
MkDir                       命令         建立一子目錄
Move                        函數         從源到目標複製字節
MultiSelect                 屬性         允許同時選擇幾個數據項
Name                        屬性         控件的名字
New                         函數         建立新的動態變量並設置一指針變量指向他
NewStr                      函數         在堆棧上分配新的字符串
Now                         函數         返回當前的日期和時間
Odd                                      測試參數是否爲奇數
OnActivate                  事件         焦點移到窗體上時觸發
OnClick                     事件         單擊窗體空白區域觸發
OnDblClick                  事件         雙擊窗體空白區域觸發
OnCloseQuery                事件         使用者試圖關閉窗體觸發
OnClose                     事件         窗體關閉後才觸發
OnCreate                    事件         窗體第一次創建時觸發
OnDeactivate                事件         用戶切換到另一應用程序觸發
OnDragDrop                  事件         鼠標拖放操作結束時觸發
OnDragOver                  事件         有其他控件從他上面移過觸發
OnMouseDown                 事件         按下鼠標鍵時觸發
OnMouseUp                   事件         釋放鼠標鍵時觸發
OnMouseMove                 事件         移動鼠標時觸發
OnHide                      事件         隱藏窗體時觸發
OnKeyDown                   事件         按下鍵盤某鍵時觸發
OnKeyPress                  事件         按下鍵盤上的單個字符鍵時觸發
OnKeyUp                     事件         釋放鍵盤上的某鍵時觸發
OnPaint                     事件         窗體上有新部分暴露出來觸發
OnResize                    事件         重新調整窗體大小觸發
OnShow                      事件         在窗體實際顯示之前瞬間觸發
Ord                                      返回序數類的序數
OutlineStyle                屬性         類型
OutOfMemoryError                         引起OutOfMemory意外
PageIndex                   屬性         頁索引
Pages                       屬性         頁
ParamCount                  函數         返回在命令行上傳遞給程序的參數數量
ParamStr                    函數         返回指定的命令行參數
Pen                         屬性         畫刷設置
Pi                          函數         返回圓周率Pi
Picture                     屬性         顯示圖象
PictureClosed               屬性         設置Closed位圖
PictureLeaf                 屬性         設置Leaf位圖
PictureMinus                屬性         設置Minus位圖
PictureOpen                 屬性         設置Open位圖
PicturePlus                 屬性         設置Plus位圖
Pos                         函數         在字符串中搜索子串
Pred                        函數         返回先前的參數
Random                      函數         返回一隨機函數
Randomize                   函數         用一隨機數初始化內置的隨機數生成器
Read                        函數         對有格式的文件,讀一文件組件到變量中;
                                         對文本文件,讀一個或多個值到一個或多個變量中
Readln                      函數         執行Read過程,然後跳到文件下一行
ReadOnly                    屬性         只讀屬性
ReAllocMem                  函數         分配一動態變量
Rename                      函數         重命名外部文件
RenameFile                  函數         對文件重命名
Reset                       函數         打開已有的文件
Rewrite                     函數         建立並打開一新的文件
RmDir                       函數         刪除空的子目錄
Round                       函數         將實數值舍入爲整型值
RunError                    函數         停止程序的執行
ScrollBars                  屬性         滾動條狀態
Seek                        函數         將文件的當前指針移動到指定的組件上
SeekEof                     函數         返回文件的文件結束狀態
SeekEoln                    函數         返回文件的行結束狀態
SelectedColor               屬性         選中顏色
SetMemoryManager            函數         設置內存管理器的入口點
SetTextBuf                  函數         給文本文件指定I/O緩衝區
Shape                       屬性         顯示的形狀
ShowException               函數         顯示意外消息與地址
Sin                         函數         正弦函數
SizeOf                      函數         返回參數所佔的字節數
SmallChange                 屬性         最小改變值
Sorted                      屬性         是否允許排序
Sqr                         函數         平方函數
Sqrt                        函數         平方根函數
StartMargin                 屬性         開始邊緣
State                       屬性         控件當前狀態
Str                         函數         將數值轉換爲字符串
StrAlloc                    函數         給以NULL結束的字符串分配最大長度-1的緩衝區
StrBufSize                  函數         返回存儲在由StrAlloc分配的字符緩衝區的最大字符數
StrCat                      函數         將一字符串附加到另一字符串尾並返回合併的字符串
StrComp                     函數         比較兩個字符串
StrCopy                     函數         將一個字符串複製到另一個字符串中
StrDispose                  函數         釋放堆棧上的字符串
StrECopy                    函數         將一字符串複製到另一個字符串並返回結果字符串尾部的指針
StrEnd                      函數         返回指向字符串尾部的指針
Stretch                     屬性         自動適應控件的大小
StrFmt                      函數         格式化一系列的參數
StrIComp                    函數         比較兩個字符串(不區分大小寫)
StringToWideChar            函數         將ANSI字符串轉換爲UNICODE字符串
StrLCat                     函數         將一字符串中的字符附加到另一字符串尾並返回合併的字符串
StrLComp                    函數         以最大長度比較兩個字符串
StrLCopy                    函數         將一個字符串中的字符複製到另一個字符串中
StrLen                      函數         返回字符串中的字符數
StrLFmt                     函數         格式化一系列的參數,其結果中包含有指向目標緩衝區的指針
StrLIComp                   函數         以最大長度比較兩個字符串(不區分大小寫)
StrLower                    函數         將字符串中的字符轉換爲小寫
StrMove                     函數         將一個字符串中的字符複製到另一個字符串中
StrNew                      函數         在堆棧上分配一個字符串
StrPas                      函數         將以NULL結束的字符串轉換爲PASCAL類的字符串
StrPCopy                    函數         將PASCAL類的字符串複製爲以NULL結束的字符串
StrPLCopy                   函數         從PASCAL類的最大長度字符串複製爲以NULL結束的字符串
StrPos                      函數         返回一個字符串在另一個字符串中首次出現指針
StrRScan                    函數         返回字符串中最後出現字符的指針
StrScan                     函數         返回字符串中出現首字符的指針
StrToDate                   函數         將字符串轉換爲日期格式
StrToDateTime               函數         將字符串轉換爲日期/時間格式
StrToFloat                  函數         將給定的字符串轉換爲浮點數
StrToInt                    函數         將字符串轉換爲整型
StrToIntDef                 函數         將字符串轉換爲整型或默認值
StrToTime                   函數         將字符串轉換爲時間格式
StrUpper                    函數         將字符串中的字符轉換爲大寫
Style                       屬性         類型選擇
Suce                        函數         返回後繼的參數
Swap                        函數         交換參數的高低地址位
Tabs                        屬性         標記每一項的內容
TabIndex                    屬性         標記索引
Text                        屬性         顯示的文本
TextToFloat                 函數         將字符串(以NULL結束的格式)轉換爲浮點數
Time                        函數         返回當前的時間
TimeToStr                   函數         將時間格式轉換爲字符串
Trim                        函數         從給定的字符串中刪除前導和尾部的空格及控制字符
TrimLeft                    函數         從給定的字符串中刪除首部的空格及控制字符
TrimRight                   函數         從給定的字符串中刪除尾部的空格及控制字符
Trunc                       函數         將實型值截取爲整型值
Truncate                    函數         截去當前文件位置後的內容
UnSelectedColor             屬性         未選中顏色
UpCase                                   將字符轉換爲大寫
UpperCase                                將給定的字符串變爲大寫
Val                         函數         將字符串轉換爲整型值
VarArrayCreate              函數         以給定的界限和維數建立變體數組
VarArrayDimCount            函數         返回給定變體的維數
VarArrayHighBound           函數         返回給定變體數組維數的上界
VarArrayLock                函數         鎖定給定的變體數組
VarArrayLowBound            函數         返回給定變體數組維數的下界
VarArrayOf                  函數         返回指定變體的數組元素
VarArrayRedim               函數         通過改變上限來調整變體的大小
VarArrayUnlock              函數         解鎖指定的變體數組
VarAsType                   函數         將變體轉換爲指定的類型
VarCase                     函數         將變體轉換爲指定的類型並保存他
VarClear                    函數         清除指定的變體
VarCopy                     函數         將指定的變體複製爲指定的變體
VarFormDateTime             函數         返回包含日期時間的變體
VarIsArray                  函數         測試變體是否爲數組
VarIsEmpty                  函數         測試變體是否爲UNASSIGNED
VarIsNull                   函數         測試變體是否爲NULL
VarToDateTime               函數         將給定的變體轉換爲日期時間
VarType                     函數         將變體轉換爲指定的類型並保存他
Visible                     屬性         控件的可見性
WantReturns                 屬性         爲True時,按回車鍵產生一個回車符;
                                         爲False時,按下Ctrl+Enter才產生回車符
Write                       命令         對有格式的文件,寫一變量到文件組件中;
                                         對文本文件,寫一個或多個值到文件中
Writeln                     命令         執行WRITE過程,然後輸出一行結束標誌
WideCharLenToString         函數         將ANSI字符串轉換爲UNICODE字符串
WideCharLenToStrWar         函數         將UNICODE字符串轉換爲ANSI字符串變量
WideCharToString            函數         將UNICODE字符串轉換爲ANSI字符串
WideCharToStrVar            函數         將UNICODE字符串轉換爲ANSI字符串變量
delphi6 函數大全使用詳解

日期:2003年12月2日21:37
出處: http://www.globemis.com製作
作者: SAYYES

13、Delphi6函數大全   
<<Delphi6函數大全-StrUtils.pas/SysUtils>> 

首部 function AnsiResemblesText(const AText, AOther: string): Boolean; $[StrUtils.pas
功能 返回兩個字符串是否相似
說明 ANSI(American National Standards Institute)美國國家標準協會;不區分大小寫
參考 function StrUtils.SoundexProc; var StrUtils.AnsiResemblesProc
例子 CheckBox1.Checked := AnsiResemblesText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiContainsText(const AText, ASubText: string): Boolean; $[StrUtils.pas
功能 返回字符串AText是否包含子串ASubText
說明 不區分大小寫
參考 function StrUtils.AnsiUppercase; function StrUtils.AnsiPos
例子 CheckBox1.Checked := AnsiContainsText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiStartsText(const ASubText, AText: string): Boolean; $[StrUtils.pas
功能 返回字符串AText是否以子串ASubText開頭
說明 不區分大小寫
參考 function Windows.CompareString
例子 CheckBox1.Checked := AnsiStartsText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiEndsText(const ASubText, AText: string): Boolean; $[StrUtils.pas
功能 返回字符串AText是否以子串ASubText結尾
說明 不區分大小寫
參考 function Windows.CompareString
例子 CheckBox1.Checked := AnsiEndsText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiReplaceText(const AText, AFromText, AToText: string): string; $[StrUtils.pas
功能 返回字符串AText中用子串AFromText替換成子串AToText的結果
說明 不區分大小寫
參考 function SysUtils.StringReplace; type SysUtils.TReplaceFlags
例子 Edit4.Text := AnsiReplaceText(Edit1.Text, Edit2.Text, Edit3.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiMatchText(const AText: string; const AValues: array of string): Boolean; $[StrUtils.pas
功能 返回字符串數組AValues中是否包含字符串AText
說明 不區分大小寫
參考 function StrUtils.AnsiIndexText
例子 CheckBox1.Checked := AnsiMatchText(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiIndexText(const AText: string; const AValues: array of string): Integer; $[StrUtils.pas
功能 返回字符串AText在字符串數組AValues中的位置
說明 不區分大小寫;如果不包含則返回-1
參考 function SysUtils.AnsiSameText
例子 SpinEdit1.Value := AnsiIndexText(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiContainsStr(const AText, ASubText: string): Boolean; $[StrUtils.pas
功能 返回字符串AText是否包含子串ASubText
說明 區分大小寫
參考 function StrUtils.AnsiPos
例子 CheckBox1.Checked := AnsiContainsStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStartsStr(const ASubText, AText: string): Boolean; $[StrUtils.pas
功能 返回字符串AText是否以子串ASubText開頭
說明 區分大小寫
參考 function SysUtils.AnsiSameStr
例子 CheckBox1.Checked := AnsiStartsStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiEndsStr(const ASubText, AText: string): Boolean; $[StrUtils.pas
功能 返回字符串AText是否以子串ASubText結尾
說明 區分大小寫
參考 function SysUtils.AnsiSameStr
例子 CheckBox1.Checked := AnsiEndsStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiReplaceStr(const AText, AFromText, AToText: string): string; $[StrUtils.pas
功能 返回字符串AText中用子串AFromText替換成子串AToText的結果
說明 區分大小寫
參考 function SysUtils.StringReplace; type SysUtils.TReplaceFlags
例子 Edit4.Text := AnsiReplaceStr(Edit1.Text, Edit2.Text, Edit3.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiMatchStr(const AText: string; const AValues: array of string): Boolean; $[StrUtils.pas
功能 返回字符串數組AValues中是否包含字符串AText
說明 區分大小寫
參考 function StrUtils.AnsiIndexStr
例子 CheckBox1.Checked := AnsiMatchStr(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiIndexStr(const AText: string; const AValues: array of string): Integer; $[StrUtils.pas
功能 返回字符串AText在字符串數組AValues中的位置
說明 區分大小寫
參考 function SysUtils.AnsiSameStr
例子 SpinEdit1.Value := AnsiIndexStr(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function DupeString(const AText: string; ACount: Integer): string; $[StrUtils.pas
功能 返回字符串AText的ACount個複本
說明 當ACount爲0時返回''
參考 function System.SetLength
例子 Edit3.Text := DupeString(Edit1.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function ReverseString(const AText: string): string; $[StrUtils.pas
功能 返回字符串AText的反序
說明 ReverseString('1234') = '4321'
參考 function System.SetLength
例子 Edit3.Text := ReverseString(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function StuffString(const AText: string; AStart, ALength: Cardinal; const ASubText: string): string; $[StrUtils.pas
功能 返回嵌套字符串
說明 AStart:嵌套開始位置;ALength:嵌套長度;StuffString('abcd', 2, 0, '12') = 'a12bcd'
參考 function System.Copy
例子 Edit3.Text := StuffString(Edit1.Text, SpinEdit1.Value, SpinEdit2.Value, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function RandomFrom(const AValues: array of string): string; overload; $[StrUtils.pas
功能 隨機返回字符串數組AValues中的一個元素
說明 之前建議執行Randomize
參考 function System.Random
例子 Randomize; Edit3.Text := RandomFrom(['a1', 'a2', 'a3', 'a4']);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function IfThen(AValue: Boolean; const ATrue: string; AFalse: string = ''): string; overload; $[StrUtils.pas
功能 返回指定的邏輯字符串
說明 IfThen(True, '是', '否') = '是';IfThen(False, '是', '否') = '否'
參考 <NULL>
例子 Edit3.Text := IfThen(CheckBox1.Checked, Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function LeftStr(const AText: string; const ACount: Integer): string; $[StrUtils.pas
功能 返回字符串AText左邊的ACount個字符
說明 LeftStr('123456', 3) = '123'
參考 function System.Copy
例子 Edit3.Text := LeftStr(Edit1.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function RightStr(const AText: string; const ACount: Integer): string; $[StrUtils.pas
功能 返回字符串AText右邊的ACount個字符
說明 RightStr('123456', 3) = '456'
參考 function System.Copy
例子 Edit3.Text := RightStr(Edit1.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function MidStr(const AText: string; const AStart, ACount: Integer): string; $[StrUtils.pas
功能 返回字符串AText從AStart開始的ACount個字符
說明 其實就是Copy
參考 function System.Copy
例子 Edit3.Text := MidStr(Edit1.Text, SpinEdit1.Value, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function SearchBuf(Buf: PChar; BufLen: Integer; SelStart, SelLength: Integer; SearchString: String; Options: TStringSearchOptions = [soDown]): PChar; $[StrUtils.pas
功能 返回第一個搜索到的指針位置
說明 這函數常用於文本中搜索字符串
參考 <NULL>
例子 
///////Begin SearchBuf
function SearchEdit(EditControl: TCustomEdit; const SearchString: String;
SearchOptions: TStringSearchOptions; FindFirst: Boolean = False): Boolean;
var
Buffer, P: PChar;
Size: Word;
begin
Result := False;
if (Length(SearchString) = 0) then Exit;
Size := EditControl.GetTextLen;
if (Size = 0) then Exit;
Buffer := StrAlloc(Size + 1);
try
EditControl.GetTextBuf(Buffer, Size + 1);
P := SearchBuf(Buffer, Size, EditControl.SelStart, EditControl.SelLength,
SearchString, SearchOptions);
if P <> nil then begin
EditControl.SelStart := P - Buffer;
EditControl.SelLength := Length(SearchString);
Result := True;
end;
finally
StrDispose(Buffer);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
SearchOptions: TStringSearchOptions;
begin
SearchOptions := [];
if CheckBox1.Checked then
Include(SearchOptions, soDown);
if CheckBox2.Checked then
Include(SearchOptions, soMatchCase);
if CheckBox3.Checked then
Include(SearchOptions, soWholeWord);
SearchEdit(Memo1, Edit1.Text, SearchOptions);
Memo1.SetFocus;
end;
///////End SearchBuf
━━━━━━━━━━━━━━━━━━━━━ 
首部 function Soundex(const AText: string; ALength: TSoundexLength = 4): string; $[StrUtils.pas
功能 返回探測字符串
說明 根據探測法(Soundex)可以找到相進的字符串;http://www.nara.gov/genealogy/coding.html
參考 <NULL>
例子 Edit2.Text := Soundex(Edit1.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function SoundexInt(const AText: string; ALength: TSoundexIntLength = 4): Integer; $[StrUtils.pas
功能 返回探測整數
說明 ALength的值越大解碼準確率越高
參考 <NULL>
例子 SpinEdit2.Value := SoundexInt(Edit1.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function DecodeSoundexInt(AValue: Integer): string; $[StrUtils.pas
功能 返回探測整數的解碼
說明 DecodeSoundexInt(SoundexInt('hello')) 相當於 Soundex('hello')
參考 <NULL>
例子 Edit2.Text := DecodeSoundexInt(SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function SoundexWord(const AText: string): Word; $[StrUtils.pas
功能 返回探測文字數值
說明 沒有參數ALength已經固定爲4
參考 <NULL>
例子 SpinEdit2.Value := SoundexWord(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function DecodeSoundexWord(AValue: Word): string; $[StrUtils.pas
功能 返回探測文字數值的解碼
說明 DecodeSoundexWord(SoundexWord('hello')) 相當於 Soundex('hello')
參考 <NULL>
例子 Edit2.Text := DecodeSoundexWord(SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function SoundexSimilar(const AText, AOther: string; ALength: TSoundexLength = 4): Boolean; $[StrUtils.pas
功能 返回兩個字符串的探測字符串是否相同
說明 Result := Soundex(AText, ALength) = Soundex(AOther, ALength)
參考 <NULL>
例子 CheckBox1.Checked := SoundexSimilar(Edit1.Text, Edit2.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function SoundexCompare(const AText, AOther: string; ALength: TSoundexLength = 4): Integer; $[StrUtils.pas
功能 返回比較兩個字符串的探測字符串的結果
說明 Result := AnsiCompareStr(Soundex(AText, ALength), Soundex(AOther, ALength))
參考 function SysUtils.AnsiCompareStr
例子 SpinEdit2.Value := SoundexCompare(Edit1.Text, Edit2.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function SoundexProc(const AText, AOther: string): Boolean; $[StrUtils.pas
功能 調用SoundexSimilar返回兩個字符串的探測字符串是否相同
說明 系統變量AnsiResemblesProc的默認值
參考 function StrUtils.AnsiResemblesText
例子 [var AnsiResemblesProc: TCompareTextProc = SoundexProc;]
━━━━━━━━━━━━━━━━━━━━━
首部 function Languages: TLanguages; $[SysUtils.pas
功能 返回系統語言對象
說明 通過此函數可以得到系統的語言環境
參考 type SysUtils.TLanguages
例子 
///////Begin Languages
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
Memo1.Clear;
for I := 0 to Languages.Count - 1 do
Memo1.Lines.Add(Languages.Name[I]);
end;
///////End Languages
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AllocMem(Size: Cardinal): Pointer; $[SysUtils.pas
功能 返回一個指定大小Size的內存塊
說明 配合用FreeMem釋放資源
參考 function System.GetMem
例子 
///////Begin AllocMem
procedure TForm1.Button1Click(Sender: TObject);
var
I: PInteger;
begin
I := AllocMem(SizeOf(Integer));
I^ := 100;
Edit1.Text := IntToStr(I^);
FreeMem(I, SizeOf(Integer));
end;
///////End AllocMem
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure AddExitProc(Proc: TProcedure); $[SysUtils.pas
功能 添加一個退出處理的過程
說明 建議用finalization部分取代
參考 <NULL>
例子 
////////Begin AddExitProc
uses
ShellApi;

procedure ExitProc;
begin
ShellExecute(0, 'Open', 'Calc.exe', nil, nil, SW_SHOW);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
AddExitProc(ExitProc);
end;
////////End AddExitProc
━━━━━━━━━━━━━━━━━━━━━ 
首部 function NewStr(const S: string): PString; deprecated; $[SysUtils.pas
功能 返回一個新的字符串指針地址
說明 字符串S爲空時返回NullStr
參考 procedure System.New
例子 
////////Begin NewStr,DisposeStr
procedure TForm1.Button1Click(Sender: TObject);
var
P: PString;
begin
P := NewStr(Edit1.Text);
Edit2.Text := P^;
DisposeStr(P);
end;
////////End NewStr,DisposeStr
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure DisposeStr(P: PString); deprecated; $[SysUtils.pas
功能 釋放字符串指針P資源
說明 配合函數NewStr使用
參考 procedure System.Dispose
例子 <如上參見,如下參見>
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure AssignStr(var P: PString; const S: string); deprecated; $[SysUtils.pas
功能 將字符串S更新給字符串指針P
說明 更新值時會釋放以前字符串指針的資源
參考 function SysUtils.NewStr;function SysUtils.DisposeStr
例子 
////////Begin AssignStr
procedure TForm1.Button1Click(Sender: TObject);
var
P: PString;
begin
P := nil;
AssignStr(P, Edit1.Text);
Edit2.Text := P^;
DisposeStr(P);
end;
////////End AssignStr
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure AppendStr(var Dest: string; const S: string); deprecated; $[SysUtils.pas
功能 在字符串Dest後追加字符串S
說明 相當於Dest := Dest + S;Delphi6已經不建議使用
參考 <NULL>
例子 
////////Begin AppendStr
procedure TForm1.Button1Click(Sender: TObject);
var
S: string;
begin
S := Edit2.Text;
AppendStr(S, Edit1.Text);
Edit2.Text := S;
end;
////////End AppendStr
━━━━━━━━━━━━━━━━━━━━━ 
首部 function UpperCase(const S: string): string; $[SysUtils.pas
功能 返回字符串S的大寫形式
說明 非小寫字符不處理
參考 procedure System.SetLength
例子 Edit2.Text := UpperCase(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function LowerCase(const S: string): string; $[SysUtils.pas
功能 返回字符串S的小寫形式
說明 非大寫字符不處理
參考 procedure System.SetLength
例子 Edit2.Text := LowerCase(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function CompareStr(const S1, S2: string): Integer; $[SysUtils.pas
功能 返回比較兩個字符
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;區分大小寫
參考 <NULL>
例子 SpinEdit1.Value := CompareStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function CompareMem(P1, P2: Pointer; Length: Integer): Boolean; assembler; $[SysUtils.pas
功能 返回比較兩個內存指針
說明 CompareMem(PChar('12a'), PChar('12c'), 2)=True;CompareMem(PChar('12a'), PChar('12c'), 3)=False
參考 <NULL>
例子 CheckBox1.Checked := CompareMem(Self, Form1, 8);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function CompareText(const S1, S2: string): Integer; $[SysUtils.pas
功能 返回比較兩個字符串
說明 不區分大小寫
參考 <NULL>
例子 SpinEdit1.Value := CompareText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function SameText(const S1, S2: string): Boolean; $[SysUtils.pas
功能 返回兩個字符串是否相等
說明 不區分大小寫
參考 <NULL>
例子 CheckBox1.Checked := SameText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiUpperCase(const S: string): string; $[SysUtils.pas
功能 返回字符串S的大寫形式
說明 ANSI(American National Standards Institute)美國國家標準協會;非小寫的字符不變
參考 function Windows.CharUpperBuff
例子 Edit2.Text := AnsiUpperCase(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiLowerCase(const S: string): string; $[SysUtils.pas
功能 返回字符串S的小寫形式
說明 非大寫字符不處理
參考 function Windows.CharLowerBuff
例子 Edit2.Text := AnsiLowerCase(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiCompareStr(const S1, S2: string): Integer; $[SysUtils.pas
功能 反回比較兩個字符串
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;區分大小寫
參考 function Windows.CompareString
例子 SpinEdit1.Value := AnsiCompareStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiSameStr(const S1, S2: string): Boolean; $[SysUtils.pas
功能 返回兩個字符串是否相等
說明 區分大小寫
參考 function SysUtils.AnsiCompareStr
例子 CheckBox1.Checked := AnsiSameStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiCompareText(const S1, S2: string): Integer; $[SysUtils.pas
功能 反回比較兩個字符串
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;不區分大小寫
參考 function Windows.CompareString
例子 SpinEdit1.Value := AnsiCompareText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiSameText(const S1, S2: string): Boolean; $[SysUtils.pas
功能 返回兩個字符串是否相等
說明 不區分大小寫
參考 function SysUtils.AnsiCompareText
例子 CheckBox1.Checked := AnsiSameText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrComp(S1, S2: PChar): Integer; $[SysUtils.pas
功能 返回比較兩個指針字符串
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;區分大小寫
參考 function System.CompareString
例子 SpinEdit1.Value := AnsiStrComp(PChar(Edit1.Text), PChar(Edit2.Text))
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrIComp(S1, S2: PChar): Integer; $[SysUtils.pas
功能 返回比較兩個指針字符串
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;不區分大小寫;Ignore(忽略)
參考 function Windows.CompareString
例子 SpinEdit1.Value := AnsiStrIComp(PChar(Edit1.Text), PChar(Edit2.Text))
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrLComp(S1, S2: PChar; MaxLen: Cardinal): Integer; $[SysUtils.pas
功能 返回比較兩個指針字符串指定長度
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;區分大小寫;Length(長度)
參考 function Windows.CompareString
例子 SpinEdit1.Value := AnsiStrLComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value)
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrLIComp(S1, S2: PChar; MaxLen: Cardinal): Integer; $[SysUtils.pas
功能 返回比較兩個指針字符串指定長度
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;不區分大小寫
參考 function Windows.CompareString
例子 SpinEdit1.Value := AnsiStrLIComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value)
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrLower(Str: PChar): PChar; $[SysUtils.pas
功能 返回指針字符串小寫形式
說明 非大寫字符不處理
參考 function Windows.CharLower
例子 Edit2.Text := AnsiStrLower(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrUpper(Str: PChar): PChar; $[SysUtils.pas
功能 返回指針字符串大寫形式
說明 非小寫字符不處理
參考 function Windows.CharUpper
例子 Edit2.Text := AnsiStrUpper(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiLastChar(const S: string): PChar; $[SysUtils.pas
功能 返回字符串S的最後一個指針字符
說明 當字符串S爲空串則返回空指針
參考 function SysUtils.ByteType
例子 Edit2.Text := AnsiLastChar(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrLastChar(P: PChar): PChar; $[SysUtils.pas
功能 返回指針字符串P的最後一個指針字符
說明 當字符串P爲空空指針則返回空指針
參考 function SysUtils.ByteType
例子 Edit2.Text := AnsiLastChar(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━ 
首部 function WideUpperCase(const S: WideString): WideString; $[SysUtils.pas
功能 返回雙字節字符串的大寫形式
說明 WideChar雙字節字符
參考 function Windows.CharUpperBuffW
例子 Edit2.Text := WideUpperCase(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function WideLowerCase(const S: WideString): WideString; $[SysUtils.pas
功能 返回雙字節字符串的小寫形式
說明 我怎麼就測試不出來呢
參考 function Windows.CharLowerBuffW
例子 Edit2.Text := WideLowerCase(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function WideCompareStr(const S1, S2: WideString): Integer; $[SysUtils.pas
功能 返回比較兩個雙字節字符串
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;區分大小寫
參考 function Windows.CompareStringW
例子 SpinEdit1.Value := WideCompareStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function WideSameStr(const S1, S2: WideString): Boolean; $[SysUtils.pas
功能 返回兩個雙字節字符串是否相同
說明 區分大小寫
參考 function SysUtils.WideCompareStr
例子 CheckBox1.Checked := WideSameStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function WideCompareText(const S1, S2: WideString): Integer; $[SysUtils.pas
功能 返回比較兩個雙字節字符串
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;不區分大小寫
參考 function Windows.CompareStringW
例子 SpinEdit1.Value := WideCompareText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function WideSameText(const S1, S2: WideString): Boolean; $[SysUtils.pas
功能 返回兩個雙字節字符串是否相同
說明 不區分大小寫
參考 function SysUtils.WideCompareText
例子 CheckBox1.Checked := WideSameText(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function Trim(const S: string): string; overload; $[SysUtils.pas
首部 function Trim(const S: WideString): WideString; overload; $[SysUtils.pas
功能 返回除去字符串S左右不可見字符
說明 小於#32的字符看作不可見字符
參考 function System.Copy
例子 Edit2.Text := Trim(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function TrimLeft(const S: string): string; overload; $[SysUtils.pas
首部 function TrimLeft(const S: WideString): WideString; overload; $[SysUtils.pas
功能 返回除去字符串S左邊不可見字符
說明 小於#32的字符看作不可見字符
參考 function System.Copy
例子 Edit2.Text := TrimLeft(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function TrimRight(const S: string): string; overload; $[SysUtils.pas
首部 function TrimRight(const S: WideString): WideString; overload; $[SysUtils.pas
功能 返回除去字符串S右邊不可見字符
說明 小於#32的字符看作不可見字符
參考 function System.Copy
例子 Edit2.Text := TrimRight(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function QuotedStr(const S: string): string; $[SysUtils.pas
功能 返回字符串S在pascal中的表現形式
說明 單引號中的一個單引號將轉成兩個
參考 procedure System.Insert
例子 Edit2.Text := QuotedStr(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiQuotedStr(const S: string; Quote: Char): string; $[SysUtils.pas
功能 返回字符串S以字符Quote爲引號的表現形式
說明 AnsiQuotedStr('hello"world', '@')='@hello"world@';AnsiQuotedStr('hello"world', '"')='"hello""world"'
參考 function SysUtils.AnsiStrScan
例子 Edit2.Text := AnsiQuotedStr(Edit1.Text, '"');
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiExtractQuotedStr(var Src: PChar; Quote: Char): string; $[SysUtils.pas
功能 返回以字符Quote爲引號的表現形式原形
說明 表現形式非法時Src不變否則爲空
參考 function SysUtils.AnsiStrScan
例子
///////Begin AnsiExtractQuotedStr
procedure TForm1.Button1Click(Sender: TObject);
var
P: PChar;
begin
P := PChar(Edit1.Text);
Edit2.Text := AnsiExtractQuotedStr(P, '"');
Edit3.Text := P;
end;
///////End AnsiExtractQuotedStr
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiDequotedStr(const S: string; AQuote: Char): string; $[SysUtils.pas
功能 返回以字符AQuote爲引號的表現形式原形
說明 表現形式非法時則返回S
參考 function SysUtils.AnsiExtractQuotedStr
例子 Edit2.Text := AnsiDequotedStr(Edit1.Text, '"');
━━━━━━━━━━━━━━━━━━━━━
首部 function AdjustLineBreaks(const S: string; Style: TTextLineBreakStyle = {$IFDEF LINUX} tlbsLF {$ENDIF} {$IFDEF MSWINDOWS} tlbsCRLF {$ENDIF}): string; $[SysUtils.pas
功能 返回將給定字符串的行分隔符調整爲CR/LF序列
說明 AdjustLineBreaks('1'#13'2'#13)='1'#13#10'2'#13#10;AdjustLineBreaks('1'#10'2'#10)='1'#13#10'2'#13#10
參考 function SysUtils.StrNextChar
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function IsValidIdent(const Ident: string): Boolean; $[SysUtils.pas
功能 返回字符串Ident是否是正確的標識符
說明 標識符::字母|下劃線[字母|下劃線|數字]...
參考 <NULL>
例子 CheckBox1.Checked := IsValidIdent(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function IntToStr(Value: Integer): string; overload; $[SysUtils.pas
首部 function IntToStr(Value: Int64): string; overload; $[SysUtils.pas
功能 返回整數Value轉換成字符串
說明 Format('%d', [Value])
參考 function SysUtils.FmtStr
例子 Edit2.Text := IntToStr(SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function IntToHex(Value: Integer; Digits: Integer): string; overload; $[SysUtils.pas
首部 function IntToHex(Value: Int64; Digits: Integer): string; overload; $[SysUtils.pas
功能 返回整數Value轉換成十六進制表現結果;Format('%.*x', [Digits, Value])
說明 參數Digits指定字符最小寬度;最小寬度不足時將用0填充
參考 function SysUtils.FmtStr
例子 Edit2.Text := IntToHex(SpinEdit1.Value, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToInt(const S: string): Integer; $[SysUtils.pas
功能 返回字符串S轉換成整數
說明 字符串非整數表達時將引起異常
參考 procedure System.Val
例子 SpinEdit1.Value := StrToInt(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToIntDef(const S: string; Default: Integer): Integer; $[SysUtils.pas
功能 返回字符串S轉換成整數
說明 字符串非整數表達時則返回默認值Default
參考 procedure System.Val
例子 SpinEdit1.Value := StrToIntDef(Edit1.Text, 0);
━━━━━━━━━━━━━━━━━━━━━
首部 function TryStrToInt(const S: string; out Value: Integer): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成整數Value是否成功
說明 字符串非整數表達時返回False並且Value將輸出爲0
參考 procedure System.Val
例子
///////Begin TryStrToInt
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
CheckBox1.Checked := TryStrToInt(Edit1.Text, I);
SpinEdit1.Value := I;
end;
///////End TryStrToInt
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToInt64(const S: string): Int64; $[SysUtils.pas
功能 返回字符串S轉換成六十四位整數
說明 字符串非六十四位整數表達時將引起異常
參考 procedure System.Val
例子 SpinEdit1.Value := StrToInt64(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToInt64Def(const S: string; const Default: Int64): Int64; $[SysUtils.pas
功能 返回字符串S轉換成六十四位整數
說明 字符串非六十四位整數表達時則返回默認值Default
參考 procedure System.Val
例子 SpinEdit1.Value := StrToInt64Def(Edit1.Text, 0);
━━━━━━━━━━━━━━━━━━━━━
首部 function TryStrToInt64(const S: string; out Value: Int64): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成六十四位整數Value是否成功
說明 字符串非六十四位整數表達時返回False並且Value將輸出爲0
參考 procedure System.Val
例子
///////Begin TryStrToInt64
procedure TForm1.Button1Click(Sender: TObject);
var
I: Int64;
begin
CheckBox1.Checked := TryStrToInt64(Edit1.Text, I);
SpinEdit1.Value := I;
end;
///////End TryStrToInt64
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToBool(const S: string): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成邏輯值
說明 字符非邏輯表達時將引起異常
參考 function SysUtils.TryStrToBool
例子 CheckBox1.Checked := StrToBool(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToBoolDef(const S: string; const Default: Boolean): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成邏輯值
說明 字符非邏輯表達時則返回默認值Default
參考 function SysUtils.TryStrToBool
例子 CheckBox1.Checked := StrToBoolDef(Edit1.Text, False);
━━━━━━━━━━━━━━━━━━━━━
首部 function TryStrToBool(const S: string; out Value: Boolean): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成邏輯值Value是否成功
說明 [注意]0爲假非0爲真;不是'True'和'False';Delphi6 Bug 如下修正
參考 function SysUtils.AnsiSameText;var SysUtils.TrueBoolStrs;var SysUtils.FalseBoolStrs
例子
///////Begin TryStrToBool
procedure TForm1.Button1Click(Sender: TObject);
var
B: Boolean;
begin
SetLength(TrueBoolStrs, 2);
SetLength(FalseBoolStrs, 2);
TrueBoolStrs[0] := 'True';
FalseBoolStrs[0] := 'False';
TrueBoolStrs[1] := 'Yes';
FalseBoolStrs[1] := 'No';
CheckBox1.Checked := TryStrToBool(Edit1.Text, B);
CheckBox2.Checked := B;
end;
///////End TryStrToBool
附加
///////Begin TryStrToBool
function TryStrToBool(const S: string; out Value: Boolean): Boolean;
function CompareWith(const aArray: array of string): Boolean;
var
I: Integer;
begin
Result := False;
for I := Low(aArray) to High(aArray) do
if AnsiSameText(S, aArray[I]) then
begin
Result := True;
Break;
end;
end;
var
LResult: Extended;
begin
Result := TryStrToFloat(S, LResult);
if Result then
Value := LResult <> 0
else
begin
Result := True; //修正處
VerifyBoolStrArray;
if CompareWith(TrueBoolStrs) then
Value := True
else if CompareWith(FalseBoolStrs) then
Value := False
else
Result := False;
end;
end;
///////End TryStrToBool
━━━━━━━━━━━━━━━━━━━━━
首部 function BoolToStr(B: Boolean; UseBoolStrs: Boolean = False): string; $[SysUtils.pas
功能 返回邏輯值B轉換成字符串
說明 BoolToStr(False, False)='0';BoolToStr(False, True)='-1'
參考 var SysUtils.TrueBoolStrs;var SysUtils.FalseBoolStrs
例子 Edit1.Text := BoolToStr(CheckBox1.Checked, CheckBox2.Checked);
━━━━━━━━━━━━━━━━━━━━━
首部 function LoadStr(Ident: Integer): string; $[SysUtils.pas
功能 返回根據標識Ident的字符串資源
說明 字符串資源是指程序的內部資源
參考 function SysUtils.FindStringResource
例子 Edit2.Text := LoadStr(StrToIntDef(Edit1.Text, 0));
━━━━━━━━━━━━━━━━━━━━━
首部 function FmtLoadStr(Ident: Integer; const Args: array of const): string; $[SysUtils.pas
功能 返回格式化的字符串資源
說明 字符串資源是指程序的內部資源
參考 function SysUtils.FmtStr;function SysUtils.FindStringResource
例子 <NULL>;
━━━━━━━━━━━━━━━━━━━━━
首部 function FileOpen(const FileName: string; Mode: LongWord): Integer; $[SysUtils.pas
功能 返回打開文件果
說明 Mode指定打開文件的模式(fmOpenRead,fmOpenWrite,fmOpenReadWrite....);打開失敗則返回負數
參考 function Windows.CreateFile
例子
///////Begin FileOpen,FileClose
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
I := FileOpen(Edit1.Text, fmOpenRead);
CheckBox1.Checked := I > 0;
FileClose(I);
end;
///////Begin FileOpen,FileClose
━━━━━━━━━━━━━━━━━━━━━
首部 function FileCreate(const FileName: string): Integer; overload; $[SysUtils.pas
首部 function FileCreate(const FileName: string; Rights: Integer): Integer; overload; $[SysUtils.pas
功能 返回創建文件
說明 創建失敗則返回負數
參考 function Windows.CreateFile
例子
///////Begin FileCreate
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
I := FileCreate(Edit1.Text);
CheckBox1.Checked := I > 0;
FileClose(I);
end;
///////End FileCreate
━━━━━━━━━━━━━━━━━━━━━
首部 function FileRead(Handle: Integer; var Buffer; Count: LongWord): Integer; $[SysUtils.pas
功能 返回讀取文件緩衝區的大小
說明 讀取失敗則返回負數
參考 function Windows.ReadFile
例子 <參見FileOpen>
━━━━━━━━━━━━━━━━━━━━━
首部 function FileWrite(Handle: Integer; const Buffer; Count: LongWord): Integer; $[SysUtils.pas
功能 返回寫入文件緩衝區的大小
說明 寫入失敗則返回負數
參考 function Windows.WriteFile
例子 <參見FileCreate>
━━━━━━━━━━━━━━━━━━━━━
首部 function FileSeek(Handle, Offset, Origin: Integer): Integer; overload; $[SysUtils.pas
首部 function FileSeek(Handle: Integer; const Offset: Int64; Origin: Integer): Int64; overload; $[SysUtils.pas
功能 返回指定文件偏移量
說明 Offset指定偏移量;Origin指定原點(Origin爲0時指文件首;爲1時指當前位置;爲2時指文件尾)
參考 function Windows.SetFilePointer
例子 <參見FileOpen>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure FileClose(Handle: Integer); $[SysUtils.pas
功能 返回關閉文件
說明 不關閉打開的文件會佔用系統資源
參考 function Windows.CloseHandle
例子 <參見FileOpen>
━━━━━━━━━━━━━━━━━━━━━ 
首部 function FileAge(const FileName: string): Integer; $[SysUtils.pas
功能 返回文件創建的時間
說明 文件不存在則返回-1
參考 function Windows.FindFirstFile
例子
///////Begin FileAge,DateTimeToStr,FileDateToDateTime
procedure TForm1.Button1Click(Sender: TObject);
begin
SpinEdit1.Value := FileAge(Edit1.Text);
if SpinEdit1.Value > 0 then
Edit2.Text := DateTimeToStr(FileDateToDateTime(SpinEdit1.Value));
end;
///////End FileAge,DateTimeToStr,FileDateToDateTime
━━━━━━━━━━━━━━━━━━━━━
首部 function FileExists(const FileName: string): Boolean; $[SysUtils.pas
功能 返回文件名FileName是否有實體存在
說明 包括隱藏文件
參考 function SysUtils.FileAge
例子 CheckBox1.Checked := FileExists(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function DirectoryExists(const Directory: string): Boolean; $[SysUtils.pas
功能 返回目錄名FileName是否有實體存在
說明 包括隱藏目錄
參考 function Windows.GetFileAttributes
例子 CheckBox1.Checked := DirectoryExists(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ForceDirectories(Dir: string): Boolean; $[SysUtils.pas
功能 返回創建子目錄是否成功
說明 直接創建多級目錄
參考 function SysUtils.CreateDir
例子 CheckBox1.Checked := ForceDirectories(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function FindFirst(const Path: string; Attr: Integer; var F: TSearchRec): Integer; $[SysUtils.pas
功能 返回設置文件搜索
說明 搜索成功則返回0
參考 function Windows.FindFirstFile
例子
///////Begin FindFirst,FindNext,FindClose
procedure TForm1.Button1Click(Sender: TObject);
var
vSearchRec: TSearchRec;
I: Integer;
begin
Memo1.Clear;
I := FindFirst(Edit1.Text, faAnyFile, vSearchRec);
while I = 0 do begin
Memo1.Lines.Add(vSearchRec.Name);
I := FindNext(vSearchRec);
end;
FindClose(vSearchRec);
end;
///////End FindFirst,FindNext,FindClose
━━━━━━━━━━━━━━━━━━━━━
首部 function FindNext(var F: TSearchRec): Integer; $[SysUtils.pas
功能 返回繼續文件搜索
說明 搜索成功則返回0
參考 function Windows.FindNextFile
例子 <參見FindFirst>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure FindClose(var F: TSearchRec); $[SysUtils.pas
功能 結束當前文件搜索
說明 不關閉查詢會佔用系統資源
參考 function Windows.FindClose
例子 <參見FindFirst>
━━━━━━━━━━━━━━━━━━━━━
首部 function FileGetDate(Handle: Integer): Integer; $[SysUtils.pas
功能 返回文件的修改時間
說明 讀取失敗則返回-1
參考 function Windows.GetFileTime
例子
///////Begin FileGetDate
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
I := FileOpen(Edit1.Text, fmOpenRead);
if I < 0 then Exit;
SpinEdit1.Value := FileGetDate(I);
Edit2.Text := DateTimeToStr(FileDateToDateTime(SpinEdit1.Value));
FileClose(I);
end;
///////End FileGetDate
━━━━━━━━━━━━━━━━━━━━━
首部 function FileSetDate(const FileName: string; Age: Integer): Integer; overload; $[SysUtils.pas
首部 function FileSetDate(Handle: Integer; Age: Integer): Integer; overload; platform; $[SysUtils.pas
功能 返回設置文件的修改時間
說明 修改成功則返回0
參考 function Windows.SetFileTime
例子 SpinEdit1.Value := FileSetDate(Edit1.Text, DateTimeToFileDate(StrToDateTime(Edit2.Text)));
━━━━━━━━━━━━━━━━━━━━━ 
首部 function FileGetAttr(const FileName: string): Integer; platform; $[SysUtils.pas
功能 返回文件的屬性
說明 讀取失敗則返回$FFFFFFFF
參考 function Windows.GetFileAttributes
例子 SpinEdit1.Value := FileGetAttr(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function FileSetAttr(const FileName: string; Attr: Integer): Integer; platform; $[SysUtils.pas
功能 返回設置文件的屬性
說明 設置成功則返回0
參考 function Windows.SetFileAttributes
例子 SpinEdit1.Value := FileSetAttr(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function FileIsReadOnly(const FileName: string): Boolean; $[SysUtils.pas
功能 返回文件是否只讀
說明 文件不存在看作只讀
參考 function Windows.GetFileAttributes
例子 CheckBox1.Checked := FileIsReadOnly(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function FileSetReadOnly(const FileName: string; ReadOnly: Boolean): Boolean; $[SysUtils.pas
功能 返回設置文件是否只讀是否成功
說明 文件不存在則返回False
參考 function Windows.GetFileAttributes;function Windows.SetFileAttributes
例子 CheckBox1.Checked := FileSetReadOnly(Edit1.Text, CheckBox2.Checked);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function DeleteFile(const FileName: string): Boolean; $[SysUtils.pas
功能 返回刪除文件是否成功
說明 文件不存在則返回False
參考 function Windows.DeleteFile
例子 CheckBox1.Checked := DeleteFile(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function RenameFile(const OldName, NewName: string): Boolean; $[SysUtils.pas
功能 返回重命名文件是否成功
說明 文件不存在則返回False
參考 function Windows.MoveFile
例子 CheckBox1.Checked := RenameFile(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ChangeFileExt(const FileName, Extension: string): string; $[SysUtils.pas
功能 返回改變擴展名後的文件名
說明 [注意]擴展名Extension前要加點;ChangeFileExt('a.jpg', 'bmp')='abmp'
參考 function SysUtils.LastDelimiter;function System.Copy
例子 Edit1.Text := ChangeFileExt(Edit2.Text, Edit3.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExtractFilePath(const FileName: string): string; $[SysUtils.pas
功能 返回文件名所在的路徑
說明 ExtractFilePath('C:/')='C:/';ExtractFilePath('//Server/Tool/Calc.exe')='//Server/Tool/'
參考 function SysUtils.LastDelimiter;function System.Copy
例子 Edit1.Text := ExtractFilePath(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExtractFileDir(const FileName: string): string; $[SysUtils.pas
功能 返回文件名所在的目錄
說明 ExtractFileDir('C:/')='C:/';ExtractFileDir('//Server/Tool/Calc.exe')='//Server/Tool'
參考 function SysUtils.LastDelimiter;function System.Copy
例子 Edit1.Text := ExtractFileDir(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExtractFileDrive(const FileName: string): string; $[SysUtils.pas
功能 返回文件名所在驅動器
說明 ExtractFileDrive('C:/')='C:';ExtractFileDrive('//Server/Tool/Calc.exe')='//Server/Tool'
參考 function System.Copy
例子 Edit1.Text := ExtractFileDrive(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExtractFileName(const FileName: string): string; $[SysUtils.pas
功能 返回絕對文件名
說明 ExtractFileName('C:/')='';ExtractFileName('//Server/Tool/Calc.exe')='Calc.exe'
參考 function SysUtils.LastDelimiter;function System.Copy
例子 Edit1.Text := ExtractFileName(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExtractFileExt(const FileName: string): string; $[SysUtils.pas
功能 返回文件名的擴展名
說明 ExtractFileExt('C:/')='';ExtractFileExt('//Server/Tool/Calc.exe')='.exe'
參考 function SysUtils.LastDelimiter;function System.Copy
例子 Edit1.Text := ExtractFileExt(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExpandFileName(const FileName: string): string; $[SysUtils.pas
功能 返回文件名的完整表示
說明 ExpandFileName('hello.pas')='C:/Program Files/Borland/Delphi6/Projects/hello.pas'
參考 function Windows.GetFullPathName
例子 Edit1.Text := ExpandFileName(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExpandFileNameCase(const FileName: string; out MatchFound: TFilenameCaseMatch): string; $[SysUtils.pas
功能 分情況返回文件名的完整表示
說明 type TFilenameCaseMatch = (mkNone, mkExactMatch, mkSingleMatch, mkAmbiguous);
參考 function Windows.GetFullPathName;function SysUtils.SameFileName;function SysUtils.FindFirst
例子
///////Begin ExpandFileNameCase
procedure TForm1.Button1Click(Sender: TObject);
var
vFilenameCaseMatch: TFilenameCaseMatch;
begin
Edit1.Text := ExpandFileNameCase(Edit2.Text, vFilenameCaseMatch);
SpinEdit1.Value := Ord(vFilenameCaseMatch);
end;
///////End ExpandFileNameCase
━━━━━━━━━━━━━━━━━━━━━
首部 function ExpandUNCFileName(const FileName: string): string; $[SysUtils.pas
功能 返回LINUX文件名的完整表示
說明 ExpandUNCFileName('C:/')='C:/'
參考 function SysUtils.ExpandFileName
例子 Edit1.Text := ExpandUNCFileName(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExtractRelativePath(const BaseName, DestName: string): string; $[SysUtils.pas
功能 返回參數的相對路徑
說明 ExtractRelativePath('C:/Windows/', 'C:/Windows/System')='System'
參考 function SysUtils.SameFilename;function SysUtils.ExtractFileDrive
例子 Edit1.Text := ExtractRelativePath(Edit2.Text, Edit3.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExtractShortPathName(const FileName: string): string; $[SysUtils.pas
功能 返回參數的DOS路徑
說明 ExtractShortPathName('C:/Program Files/Borland')='C:/PROGRA~1/BORLAND'
參考 function Windows.GetShortPathName
例子 Edit1.Text := ExtractShortPathName(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function FileSearch(const Name, DirList: string): string; $[SysUtils.pas
功能 返回目錄列表中DirList搜索的第一個結果
說明 FileSearch('Calc.exe', 'd:/winxp/system32;c:/windows')='d:/winxp/system32/calc.exe'
參考 function SysUtils.FileExists;function SysUtils.AnsiLastChar
例子 Edit1.Text := FileSearch(Edit2.Text, Edit3.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function DiskFree(Drive: Byte): Int64; $[SysUtils.pas
功能 返回驅動器可用空間
說明 參數Drive爲0表示當前路徑,爲1表示=A驅,爲2表示=B驅...;獲取失敗則返回-1
參考 function Windows.GetDiskFreeSpaceExA
例子 SpinEdit1.Value := DiskFree(SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function DiskSize(Drive: Byte): Int64; $[SysUtils.pas
功能 返回驅動器全部空間
說明 參數Drive爲0表示當前路徑,爲1表示=A驅,爲2表示=B驅...;獲取失敗則返回-1
參考 function Windows.GetDiskFreeSpaceExA
例子 SpinEdit1.Value := DiskSize(SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function FileDateToDateTime(FileDate: Integer): TDateTime; $[SysUtils.pas
功能 返回將文件日期時間類型轉換日期時間類型
說明 FileDate非法是將觸發異常
參考 function SysUtils.EncodeDate;function SysUtils.EncodeTime
例子 <參見FileAge>
━━━━━━━━━━━━━━━━━━━━━
首部 function DateTimeToFileDate(DateTime: TDateTime): Integer; $[SysUtils.pas
功能 返回將日期時間類型轉換文件日期時間類型
說明 年份在1980到2107之外則返回0
參考 function SysUtils.DecodeDate;function SysUtils.DecodeTime
例子 <參見FileSetDate>
━━━━━━━━━━━━━━━━━━━━━ 
首部 function GetCurrentDir: string; $[SysUtils.pas
功能 返回當前操作目錄
說明 [注意]調用文件對話框會改變當前操作目錄
參考 function System.GetDir
例子 Edit1.Text := GetCurrentDir;
━━━━━━━━━━━━━━━━━━━━━ 
首部 function SetCurrentDir(const Dir: string): Boolean; $[SysUtils.pas
功能 返回設置當前操作目錄是否成功
說明 [注意]調用文件對話框會改變當前操作目錄
參考 function Windows.SetCurrentDirectory
例子 CheckBox1.Checked := SetCurrentDir(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function CreateDir(const Dir: string): Boolean; $[SysUtils.pas
功能 返回創建目錄是否成功
說明 不支持多級目錄;已經存在則返回False
參考 function Windows.CreateDirectory
例子 CheckBox1.Checked := CreateDir(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function RemoveDir(const Dir: string): Boolean; $[SysUtils.pas
功能 返回刪除目錄是否成功
說明 必須是空目錄
參考 function Windows.RemoveDirectory
例子 CheckBox1.Checked := RemoveDir(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function StrLen(const Str: PChar): Cardinal; $[SysUtils.pas
功能 返回指針字符串的長度
說明 當指針字符串Str爲nil時將觸發異常
參考 <NULL>
例子 SpinEdit2.Value := StrLen(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrEnd(const Str: PChar): PChar; $[SysUtils.pas
功能 返回指針字符串的結尾
說明 當指針字符串Str爲nil時將觸發異常
參考 <NULL>
例子 Edit2.Text := StrEnd(PChar(Edit1.Text)) - SpinEdit1.Value;
━━━━━━━━━━━━━━━━━━━━━
首部 function StrMove(Dest: PChar; const Source: PChar; Count: Cardinal): PChar; $[SysUtils.pas
功能 返回將指針字符串Source指定內存數量Count複製覆蓋到指針字符串Dest中
說明 Dest沒有分配資源將觸發異常s
參考 function System.Move
例子
///////Begin StrMove
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: PChar;
begin
vBuffer := '0123456789';
StrMove(vBuffer, PChar(Edit1.Text), SpinEdit1.Value);
Edit2.Text := vBuffer;
end;
///////End StrMove
━━━━━━━━━━━━━━━━━━━━━
首部 function StrCopy(Dest: PChar; const Source: PChar): PChar; $[SysUtils.pas
功能 返回將指針字符串Source複製到指針字符串Dest中
說明 Dest應已經分配足夠的空間非則將觸發異常
參考 <NULL>
例子
///////Begin StrCopy
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: PChar;
begin
GetMem(vBuffer, Length(Edit1.Text) + 1);
StrCopy(vBuffer, PChar(Edit1.Text));
Edit2.Text := vBuffer;
FreeMem(vBuffer);
end;
///////End StrCopy
━━━━━━━━━━━━━━━━━━━━━
首部 function StrECopy(Dest:PChar; const Source: PChar): PChar; $[SysUtils.pas
功能 返回將指針字符串Source複製到指針字符串Dest中的結尾
說明 可以連接指針字符串
參考 <NULL>
例子
///////Begin StrECopy
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
begin
StrECopy(StrECopy(vBuffer, PChar(Edit1.Text)), PChar(Edit2.Text));
Edit3.Text := vBuffer;
end;
///////End StrECopy
━━━━━━━━━━━━━━━━━━━━━
首部 function StrLCopy(Dest: PChar; const Source: PChar; MaxLen: Cardinal): PChar; $[SysUtils.pas
功能 返回將指針字符串Source指定長度MaxLen複製到指針字符串Dest中
說明 Dest應已經分配足夠的空間非則將觸發異常
參考 <NULL>
例子
///////Begin StrLCopy
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
begin
StrLCopy(vBuffer, PChar(Edit1.Text), SpinEdit1.Value);
Edit2.Text := vBuffer;
end;
///////End StrLCopy
━━━━━━━━━━━━━━━━━━━━━
首部 function StrPCopy(Dest: PChar; const Source: string): PChar; $[SysUtils.pas
功能 返回將指針字符串Source複製到指針字符串Dest中
說明 StrLCopy(Dest, PChar(Source), Length(Source))
參考 function SysUtils.StrLCopy
例子
///////Begin StrPCopy
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
begin
StrPCopy(vBuffer, PChar(Edit1.Text));
Edit2.Text := vBuffer;
end;
///////End StrPCopy
━━━━━━━━━━━━━━━━━━━━━
首部 function StrPLCopy(Dest: PChar; const Source: string; MaxLen: Cardinal): PChar; $[SysUtils.pas
功能 返回將字符串Source指定長度MaxLen複製到指針字符串Dest中
說明 StrLCopy(Dest, PChar(Source), MaxLen)
參考 function SysUtils.StrLCopy
例子
///////Begin StrPLCopy
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
begin
StrPLCopy(vBuffer, Edit1.Text, SpinEdit1.Value);
Edit2.Text := vBuffer;
end;
///////End StrPLCopy
━━━━━━━━━━━━━━━━━━━━━
首部 function StrCat(Dest: PChar; const Source: PChar): PChar; $[SysUtils.pas
功能 返回連接指針字符串Dest和指針字符串Source
說明 StrCopy(StrEnd(Dest), Source)
參考 function SysUntils.StrCopy
例子
///////Begin StrCat
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
begin
StrPCopy(vBuffer, Edit1.Text);
StrCat(vBuffer, PChar(Edit2.Text));
Edit3.Text := vBuffer;
end;
///////End StrCat
━━━━━━━━━━━━━━━━━━━━━
首部 function StrLCat(Dest: PChar; const Source: PChar; MaxLen: Cardinal): PChar; $[SysUtils.pas
功能 返回連接指針字符串Dest和指針字符串Source
說明 [注意]MaxLen指定連接後的最大長度不是指針字符串Source的長度
參考 <NULL>
例子
///////Begin StrLCat
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
begin
StrPCopy(vBuffer, Edit1.Text);
StrLCat(vBuffer, PChar(Edit2.Text), SpinEdit1.Value);
Edit3.Text := vBuffer;
end;
///////End StrLCat
━━━━━━━━━━━━━━━━━━━━━
首部 function StrComp(const Str1, Str2: PChar): Integer; $[SysUtils.pas
功能 返回比較兩個指針字符串
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;區分大小寫;[注意]返回第一個出現不同字符的差異
參考 <NULL>
例子 SpinEdit1.Value := StrComp(PChar(Edit1.Text), PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrIComp(const Str1, Str2: PChar): Integer; $[SysUtils.pas
功能 返回比較兩個指針字符串
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;不區分大小寫;[注意]返回第一個出現不同字符的差異
參考 <NULL>
例子 SpinEdit1.Value := StrIComp(PChar(Edit1.Text), PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrLComp(const Str1, Str2: PChar; MaxLen: Cardinal): Integer; $[SysUtils.pas
功能 返回比較兩個指針字符串指定長度
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;區分大小寫;Length(長度);[注意]返回第一個出現不同字符的差異
參考 <NULL>
例子 SpinEdit1.Value := StrLComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value)
━━━━━━━━━━━━━━━━━━━━━
首部 function StrLIComp(const Str1, Str2: PChar; MaxLen: Cardinal): Integer; $[SysUtils.pas
功能 返回比較兩個指針字符串指定長度
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;不區分大小寫;[注意]返回第一個出現不同字符的差異
參考 <NULL>
例子 SpinEdit1.Value := StrLIComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value)
━━━━━━━━━━━━━━━━━━━━━
首部 function StrScan(const Str: PChar; Chr: Char): PChar; $[SysUtils.pas
功能 返回在指針字符串Str搜索字符Chr第一個出現的地址
說明 沒有找到則返回空指針
參考 <NULL>
例子 Edit2.Text := StrScan(PChar(Edit1.Text), '*');
━━━━━━━━━━━━━━━━━━━━━
首部 function StrRScan(const Str: PChar; Chr: Char): PChar; $[SysUtils.pas
功能 返回在指針字符串Str搜索字符Chr最後一個出現的地址
說明 沒有找到則返回空指針
參考 <NULL>
例子 Edit2.Text := StrRScan(PChar(Edit1.Text), '*');
━━━━━━━━━━━━━━━━━━━━━
首部 function StrPos(const Str1, Str2: PChar): PChar; $[SysUtils.pas
功能 返回指針字符串Str2在Str1中第一個出現的地址
說明 沒有找到則返回空指針;StrPos('12345', '3') = '345'
參考 <NULL>
例子 Edit3.Text := StrPos(PChar(Edit1.Text), PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━ 
首部 function StrUpper(Str: PChar): PChar; $[SysUtils.pas
功能 返回指針字符串Str大寫
說明 非小寫字符不處理
參考 <NULL>
例子 Edit1.Text := StrUpper(PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrLower(Str: PChar): PChar; $[SysUtils.pas
功能 返回指針字符串Str小寫
說明 非大寫字符不處理
參考 <NULL>
例子 Edit1.Text := StrLower(PChar(Edit2.Text)); 
━━━━━━━━━━━━━━━━━━━━━ 
首部 function StrPas(const Str: PChar): string; $[SysUtils.pas
功能 返回指針字符串Str轉換成字符串
說明 也可以直接賦值
參考 <NULL>
例子 Edit1.Text := StrPas(PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrAlloc(Size: Cardinal): PChar; $[SysUtils.pas
功能 返回分配指定空間的內存資源給指針字符串
說明 空間的大小也將保存;用StrDispose才能全部釋放
參考 function System.GetMem
例子
///////Begin StrAlloc
procedure TForm1.Button1Click(Sender: TObject);
var
P: PChar;
begin
P := StrAlloc(SpinEdit1.Value);
ShowMessage(IntToStr(StrLen(P)));
Dec(P, SizeOf(Cardinal));
ShowMessage(IntToStr(Cardinal(Pointer(P)^)));
Inc(P, SizeOf(Cardinal));
StrDispose(P);
end;
///////End StrAlloc

━━━━━━━━━━━━━━━━━━━━━
首部 function StrBufSize(const Str: PChar): Cardinal; $[SysUtils.pas
功能 返回通過函數StrAlloc分配的緩衝區大小
說明 出現異常情況則返回不可預知的結果
參考 function System.SizeOf
例子 SpinEdit1.Value := StrBufSize(StrAlloc(SpinEdit2.Value));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrNew(const Str: PChar): PChar; $[SysUtils.pas
功能 返回複製一個新的指針字符串
說明 如果Str爲nil則返回nil
參考 function SysUtils.StrLen;function SysUtils.StrMove;function SysUtils.StrAlloc
例子
///////Begin StrNew,StrDispose
procedure TForm1.Button1Click(Sender: TObject);
var
P: PChar;
begin
P := StrNew(PChar(Edit1.Text));
ShowMessage(P);
StrDispose(P);
end;
///////End StrNew,StrDispose
━━━━━━━━━━━━━━━━━━━━━
首部 procedure StrDispose(Str: PChar); $[SysUtils.pas
功能 釋放指針字符串Str內存資源
說明 如果Str爲nil則不作任何處理;並且釋放空間大小信息
參考 function System.Dec;function System.SizeOf;function System.FreeMem
例子 <參見StrNew>
━━━━━━━━━━━━━━━━━━━━━
首部 function Format(const Format: string; const Args: array of const): string; $[SysUtils.pas
功能 返回按指定方式格式化一個數組常量的字符形式
說明 這個函數是我在Delphi中用得最多的函數,現在就列舉幾個例子給你個直觀的理解
"%" [索引 ":"] ["-"] [寬度] ["." 摘要] 類型
Format('x=%d', [12]); //'x=12' //最普通
Format('x=%3d', [12]); //'x= 12' //指定寬度
Format('x=%f', [12.0]); //'x=12.00' //浮點數
Format('x=%.3f', [12.0]); //'x=12.000' //指定小數
Format('x=%.*f', [5, 12.0]); //'x=12.00000' //動態配置
Format('x=%.5d', [12]); //'x=00012' //前面補充0
Format('x=%.5x', [12]); //'x=0000C' //十六進制
Format('x=%1:d%0:d', [12, 13]); //'x=1312' //使用索引
Format('x=%p', [nil]); //'x=00000000' //指針
Format('x=%1.1e', [12.0]); //'x=1.2E+001' //科學記數法
Format('x=%%', []); //'x=%' //得到"%"
S := Format('%s%d', [S, I]); //S := S + StrToInt(I); //連接字符串
參考 proceduer SysUtils.FmtStr
例子 Edit1.Text := Format(Edit2.Text, [StrToFloatDef(Edit.3.Text, 0)]);
━━━━━━━━━━━━━━━━━━━━━
首部 procedure FmtStr(var Result: string; const Format: string; const Args: array of const); $[SysUtils.pas
功能 按指定方式格式化一個數組常量的字符形式返回
說明 <參見Format>
參考 function SysUtils.FormatBuf;function System.Length;function System.SetLength
例子 <參見Format>
━━━━━━━━━━━━━━━━━━━━━
首部 function StrFmt(Buffer, Format: PChar; const Args: array of const): PChar; $[SysUtils.pas
功能 返回按指定方式格式化一個數組常量的字符指針形式
說明 如果Buffer和Format其中只要有一個爲nil則返回nil
參考 function SysUtils.FormatBuf
例子 <參見Format>
━━━━━━━━━━━━━━━━━━━━━
首部 function StrLFmt(Buffer: PChar; MaxBufLen: Cardinal; Format: PChar; const Args: array of const): PChar; $[SysUtils.pas
功能 返回按指定方式和長度格式化一個數組常量的字符指針形式
說明 StrLFmt(vBuffer, 6, '%d|12345', [1024]) = '1024|1';
參考 function SysUtils.FormatBuf
例子 <參見Format>
━━━━━━━━━━━━━━━━━━━━━
首部 function FormatBuf(var Buffer; BufLen: Cardinal; const Format; FmtLen: Cardinal; const Args: array of const): Cardinal; $[SysUtils.pas
功能 返回按指定方式格式化一個數組常量到緩衝區Buffer中
說明 <NULL>
參考 <NULL>
例子 <參見Format>
━━━━━━━━━━━━━━━━━━━━━
首部 function WideFormat(const Format: WideString; const Args: array of const): WideString; $[SysUtils.pas
功能 返回按指定方式格式化一個數組常量的多字節字符形式
說明 <NULL>
參考 procedure SysUtils.WideFmtStr
例子 <參見Format>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure WideFmtStr(var Result: WideString; const Format: WideString; const Args: array of const); $[SysUtils.pas
功能 按指定方式格式化一個數組常量的多字節字符形式返回
說明 <NULL>
參考 function SysUtils.WideFormatBuf
例子 <參見Format>
━━━━━━━━━━━━━━━━━━━━━
首部 function WideFormatBuf(var Buffer; BufLen: Cardinal; const Format; FmtLen: Cardinal; const Args: array of const): Cardinal; $[SysUtils.pas
功能 返回按指定方式格式化一個數組常量到緩衝區Buffer中
說明 <NULL>
參考 <NULL>
例子 <參見Format>
━━━━━━━━━━━━━━━━━━━━━
首部 function FloatToStr(Value: Extended): string; $[SysUtils.pas
功能 返回浮點數Value轉換成字符串
說明 當浮點數大等於1E15將採用科學記數法
參考 function SysUtils.FloatToText
例子 Edit1.Text := FloatToStr(Now);
━━━━━━━━━━━━━━━━━━━━━
首部 function CurrToStr(Value: Currency): string; $[SysUtils.pas
功能 返回貨幣數Value轉換成字符串
說明 貨幣數只保留四位小數
參考 function SysUtils.FloatToText
例子 Edit1.Text := CurrToStr(Now);
━━━━━━━━━━━━━━━━━━━━━
首部 function FloatToCurr(const Value: Extended): Currency; $[SysUtils.pas
功能 返回浮點數Value轉換成貨幣數
說明 如果浮點數Value超出範圍則將觸發異常
參考 const SysUtiles.MinCurrency;const SysUtiles.MaxCurrency
例子 Edit1.Text := CurrToStr(FloatToCurr(Now));
━━━━━━━━━━━━━━━━━━━━━
首部 function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string; $[SysUtils.pas
功能 返回浮點數以指定格式轉換成字符串
說明 Precision指定精度;Digits指定小數寬度
參考 function SysUtils.FloatToText
例子
///////Begin FloatToStrF
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Values['ffGeneral'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffGeneral, SpinEdit1.Value, SpinEdit2.Value);
Memo1.Lines.Values['ffExponent'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffExponent, SpinEdit1.Value, SpinEdit2.Value);
Memo1.Lines.Values['ffFixed'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffFixed, SpinEdit1.Value, SpinEdit2.Value);
Memo1.Lines.Values['ffNumber'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffNumber, SpinEdit1.Value, SpinEdit2.Value);
Memo1.Lines.Values['ffCurrency'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffCurrency, SpinEdit1.Value, SpinEdit2.Value);
end;
///////End FloatToStrF
━━━━━━━━━━━━━━━━━━━━━
首部 function CurrToStrF(Value: Currency; Format: TFloatFormat; Digits: Integer): string; $[SysUtils.pas
功能 返回貨幣類型以指定格式轉換成字符串
說明 Digits指定小數寬度
參考 function SysUtils.FloatToText
例子
///////Begin CurrToStrF
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Values['ffGeneral'] := CurrToStrF(StrToCurrDef(Edit1.Text, 0),
ffGeneral, SpinEdit1.Value);
Memo1.Lines.Values['ffExponent'] := CurrToStrF(StrToCurrDef(Edit1.Text, 0),
ffExponent, SpinEdit1.Value);
Memo1.Lines.Values['ffFixed'] := CurrToStrF(StrToCurrDef(Edit1.Text, 0),
ffFixed, SpinEdit1.Value);
Memo1.Lines.Values['ffNumber'] := CurrToStrF(StrToCurrDef(Edit1.Text, 0),
ffNumber, SpinEdit1.Value);
Memo1.Lines.Values['ffCurrency'] := CurrToStrF(StrToCurrDef(Edit1.Text, 0),
ffCurrency, SpinEdit1.Value);
end;
///////End CurrToStrF
━━━━━━━━━━━━━━━━━━━━━
首部 function FloatToText(BufferArg: PChar; const Value; ValueType: TFloatValue; Format: TFloatFormat; Precision, Digits: Integer): Integer; $[SysUtils.pas
功能 返回浮點數以指定格式轉換成指針字符串的內存大小
說明 Precision指定精度;Digits指定小數寬度
參考 <NULL>
例子
///////Begin FloatToText
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
E: Extended;
begin
E := StrToFloatDef(Edit1.Text, 0);
SpinEdit3.Value := FloatToText(vBuffer, E,
fvExtended, ffNumber, SpinEdit1.Value, SpinEdit2.Value);
Edit2.Text := Copy(vBuffer, 1, SpinEdit3.Value);
end;
///////End FloatToText(
━━━━━━━━━━━━━━━━━━━━━
首部 function FormatFloat(const Format: string; Value: Extended): string; $[SysUtils.pas
功能 返回浮點數類型以指定格式字符串Format轉換成字符串
說明 FormatFloat(',.00', 1234567890) = '1,234,567,890.00'
參考 function SysUtils.FloatToTextFmt
例子 Edit1.Text := FormatFloat(Edit2.Text, StrToFloatDef(Edit3.Text, 0));
━━━━━━━━━━━━━━━━━━━━━
首部 function FormatCurr(const Format: string; Value: Currency): string; $[SysUtils.pas
功能 返回貨幣類型以指定格式字符串Format轉換成字符串
說明 FormatCurr(',.00', 1234567890) = '1,234,567,890.00'
參考 function SysUtils.FloatToTextFmt
例子 Edit1.Text := FormatCurr(Edit2.Text, StrToCurrDef(Edit3.Text, 0));
━━━━━━━━━━━━━━━━━━━━━
首部 function FloatToTextFmt(Buf: PChar; const Value; ValueType: TFloatValue; Format: PChar): Integer; $[SysUtils.pas
功能 返回浮點數以指定格式字符串Format轉換成指針字符串的內存大小
說明 ValueType指定無類型參數Value的類型
參考 <NULL>
例子
///////Begin FloatToTextFmt
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
E: Extended;
begin
E := StrToFloatDef(Edit1.Text, 0);
SpinEdit1.Value := FloatToTextFmt(vBuffer, E,
fvExtended, PChar(Edit2.Text));
Edit3.Text := Copy(vBuffer, 1, SpinEdit1.Value);
end;
///////End FloatToTextFmt
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToFloat(const S: string): Extended; $[SysUtils.pas
功能 返回字符串S轉換成浮點數
說明 字符串非浮點數表達時將引起異常
參考 function SysUtils.TextToFloat
例子 var E: Extended; begin E := StrToFloat(Edit1.Text); end;
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToFloatDef(const S: string; const Default: Extended): Extended; $[SysUtils.pas
功能 返回字符串S轉換成浮點數
說明 字符串非浮點數表達時則返回默認值Default
參考 function SysUtils.TextToFloat
例子 var E: Extended; begin E := StrToFloatDef(Edit1.Text, 0); end;
━━━━━━━━━━━━━━━━━━━━━
首部 function TryStrToFloat(const S: string; out Value: Extended): Boolean; overload; $[SysUtils.pas
首部 function TryStrToFloat(const S: string; out Value: Single): Boolean; overload; $[SysUtils.pas
首部 function TryStrToFloat(const S: string; out Value: Double): Boolean; overload; $[SysUtils.pas
功能 返回字符串S轉換成浮點數Value是否成功
說明 字符串非浮點數表達時返回False並且Value將輸出爲不確定的值
參考 function SysUtils.TextToFloat
例子
///////Begin TryStrToFloat
procedure TForm1.Button1Click(Sender: TObject);
var
E: Extended;
begin
CheckBox1.Checked := TryStrToFloat(Edit1.Text, E);
Edit2.Text := FormatFloat('', E);
end;
///////End TryStrToFloat
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToCurr(const S: string): Currency; $[SysUtils.pas
功能 返回字符串S轉換成貨幣數
說明 字符串非貨幣數表達時將引起異常
參考 function SysUtils.TextToFloat
例子 var C: Currency; begin C := StrToCurr(Edit1.Text); end;
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToCurrDef(const S: string; const Default: Currency): Currency; $[SysUtils.pas
功能 返回字符串S轉換成貨幣數
說明 字符串非貨幣數表達時則返回默認值Default
參考 function SysUtils.TextToFloat
例子 var C: Currency; begin C := StrToCurrDef(Edit1.Text, 0); end;
━━━━━━━━━━━━━━━━━━━━━
首部 function TryStrToCurr(const S: string; out Value: Currency): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成貨幣數Value是否成功
說明 字符串非貨幣數表達時返回False並且Value將輸出爲不確定的值
參考 function SysUtils.TextToFloat
例子
///////Begin TryStrToCurr
procedure TForm1.Button1Click(Sender: TObject);
var
C: Currency;
begin
CheckBox1.Checked := TryStrToCurr(Edit1.Text, C);
Edit2.Text := FormatCurr('', C);
end;
///////End TryStrToCurr
━━━━━━━━━━━━━━━━━━━━━
首部 function TextToFloat(Buffer: PChar; var Value; ValueType: TFloatValue): Boolean; $[SysUtils.pas
功能 返回將指針字符串Buffer轉換成無類型變量Value
說明 ValueType指定無類型參數Value的類型
參考 <NULL>
例子
///////Begin TextToFloat
procedure TForm1.Button1Click(Sender: TObject);
var
E: Extended;
begin
CheckBox1.Checked := TextToFloat(PChar(Edit1.Text), E,
fvExtended);
Edit2.Text := FormatFloat('', E);
end;
///////End TextToFloat
━━━━━━━━━━━━━━━━━━━━━
首部 procedure FloatToDecimal(var Result: TFloatRec; const Value; ValueType: TFloatValue; Precision, Decimals: Integer); $[SysUtils.pas
功能 將浮點數轉換成浮點結構類型並返回到Result
說明 ValueType指定類型;Precision指定精度;Decimals指定小數
參考 type SysUtils.TFloatRec
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━ 
首部 function DateTimeToTimeStamp(DateTime: TDateTime): TTimeStamp; $[SysUtils.pas
功能 返回日期時間類型轉換成時間結構類型
說明 <NULL>
參考 type SysUtils.TTimeStamp
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function TimeStampToDateTime(const TimeStamp: TTimeStamp): TDateTime; $[SysUtils.pas
功能 返回時間結構類型轉換成日期時間類型
說明 <NULL>
參考 type SysUtils.TTimeStamp
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function MSecsToTimeStamp(MSecs: Comp): TTimeStamp; $[SysUtils.pas
功能 返回微妙轉換成時間結構類型
說明 <NULL>
參考 type SysUtils.TTimeStamp
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function TimeStampToMSecs(const TimeStamp: TTimeStamp): Comp; $[SysUtils.pas
功能 返回時間結構類型轉換成微妙
說明 <NULL>
參考 type SysUtils.TTimeStamp
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function EncodeDate(Year, Month, Day: Word): TDateTime; $[SysUtils.pas
功能 返回合併年、月、日得到的日期
說明 當出現非法組合時將觸發異常
參考 function SysUtils.TryEncodeDate
例子 Edit1.Text := DateToStr(EncodeDate(SpinEdit1.Value, SpinEdit2.Value, SpinEdit3.Value));
━━━━━━━━━━━━━━━━━━━━━
首部 function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime; $[SysUtils.pas
功能 返回合併時、分、秒、微秒得到的時間
說明 當出現非法組合時將觸發異常
參考 function SysUtils.TryEncodeTime
例子 Edit1.Text := TimeToStr(EncodeTime(SpinEdit1.Value, SpinEdit2.Value, SpinEdit3.Value, SpinEdit4.Value));
━━━━━━━━━━━━━━━━━━━━━
首部 function TryEncodeDate(Year, Month, Day: Word; out Date: TDateTime): Boolean; $[SysUtils.pas
功能 返回合併年、月、日得到的日期是否成功
說明 當出現非法組合時將返回False並且Date輸出爲0
參考 function SysUtils.IsLeapYear
例子
///////Begin TryEncodeDate
procedure TForm1.Button1Click(Sender: TObject);
var
vDate: TDate;
begin
CheckBox1.Checked := TryEncodeDate(SpinEdit1.Value, SpinEdit2.Value,
SpinEdit3.Value, TDateTime(vDate));
Edit1.Text := DateToStr(vDate);
end;
///////End TryEncodeDate
━━━━━━━━━━━━━━━━━━━━━
首部 function TryEncodeTime(Hour, Min, Sec, MSec: Word; out Time: TDateTime): Boolean; $[SysUtils.pas
功能 返回合併時、分、秒、微秒得到的時間是否成功
說明 當出現非法組合時將返回False並且Time輸出爲0
參考 const SysUtils.MSecsPerDay
例子
///////Begin TryEncodeTime
procedure TForm1.Button1Click(Sender: TObject);
var
vTime: TTime;
begin
CheckBox1.Checked := TryEncodeTime(SpinEdit1.Value, SpinEdit2.Value,
SpinEdit3.Value, SpinEdit3.Value, TDateTime(vTime));
Edit1.Text := TimeToStr(vTime);
end;
///////End TryEncodeTime
━━━━━━━━━━━━━━━━━━━━━
首部 procedure DecodeDate(const DateTime: TDateTime; var Year, Month, Day: Word); $[SysUtils.pas
功能 分解日期爲年、月、日
說明 <NULL>
參考 function SysUtils.DecodeDateFully
例子
///////Begin DecodeDate
procedure TForm1.Button1Click(Sender: TObject);
var
Year, Month, Day: Word;
begin
DecodeDate(Date, Year, Month, Day);
SpinEdit1.Value := Year;
SpinEdit2.Value := Month;
SpinEdit3.Value := Day;
end;
///////End DecodeDate
━━━━━━━━━━━━━━━━━━━━━
首部 function DecodeDateFully(const DateTime: TDateTime; var Year, Month, Day, DOW: Word): Boolean; $[SysUtils.pas
功能 分解日期爲年、月、日、星期
說明 [DOW:Day Of Week]
參考 function SysUtils.DateTimeToTimeStamp
例子
///////Begin DecodeDateFully
procedure TForm1.Button1Click(Sender: TObject);
var
Year, Month, Day, DOW: Word;
begin
DecodeDateFully(Date, Year, Month, Day, DOW);
SpinEdit1.Value := Year;
SpinEdit2.Value := Month;
SpinEdit3.Value := Day;
SpinEdit4.Value := DOW;
end;
///////End DecodeDateFully
━━━━━━━━━━━━━━━━━━━━━
首部 function InternalDecodeDate(const DateTime: TDateTime; var Year, Month, Day, DOW: Word): Boolean; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 function SysUtils.DecodeDateFully
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure DecodeTime(const DateTime: TDateTime; var Hour, Min, Sec, MSec: Word); $[SysUtils.pas
功能 分解時間爲時、分、秒、微妙
說明 <NULL>
參考 function SysUtils.DateTimeToTimeStamp
例子
///////Begin DecodeTime
procedure TForm1.Button1Click(Sender: TObject);
var
Hour, Min, Sec, MSec: Word;
begin
DecodeTime(Time, Hour, Min, Sec, MSec);
SpinEdit1.Value := Hour;
SpinEdit2.Value := Min;
SpinEdit3.Value := Sec;
SpinEdit4.Value := MSec;
end;
///////End DecodeTime
━━━━━━━━━━━━━━━━━━━━━
首部 procedure DateTimeToSystemTime(const DateTime: TDateTime; var SystemTime: TSystemTime); $[SysUtils.pas
功能 返回日期時間類型轉換成系統時間類型
說明 <NULL>
參考 function SysUtils.DecodeDateFully;function SysUtils.DecodeTime
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function SystemTimeToDateTime(const SystemTime: TSystemTime): TDateTime; $[SysUtils.pas
功能 返回系統時間類型轉換成日期時間類型
說明 <NULL>
參考 function SysUtils.EncodeDate;function SysUtils.EncodeTime
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function DayOfWeek(const DateTime: TDateTime): Word; $[SysUtils.pas
功能 返回日期時間DateTime所在的星期
說明 1(星期天),2(星期一),3(星期二),4(星期三),5(星期四),6(星期五),7(星期六)
參考 function SysUtils.DateTimeToTimeStamp
例子 
///////Begin DayOfWeek
procedure TForm1.Button1Click(Sender: TObject);
const
cWeekCn: array[1..7] of string =
('星期天', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六');
begin
Edit1.Text := cWeekCn[DayOfWeek(Now)];
end;
///////End DayOfWeek
━━━━━━━━━━━━━━━━━━━━━
首部 function Date: TDateTime; $[SysUtils.pas
功能 返回當前日期
說明 Date - Int(Date)=0;
參考 function SysUtils.DateTimeToString
例子 Edit1.Text := DateToStr(Date);
━━━━━━━━━━━━━━━━━━━━━
首部 function Time: TDateTime; $[SysUtils.pas
功能 返回當前時間
說明 Time - Frac(Time)=0;
參考 function Windows.GetLocalTime;function SysUtils.EncodeTime
例子 Edit1.Text := TimeToStr(Time);
━━━━━━━━━━━━━━━━━━━━━
首部 function Now: TDateTime; $[SysUtils.pas
功能 返回當前日期時間
說明 Date + Time=Now
參考 function Windows.GetLocalTime;function SysUtils.EncodeDate;function SysUtils.EncodeTime
例子 Edit1.Text := DateTimeToStr(Now);
━━━━━━━━━━━━━━━━━━━━━
首部 function CurrentYear: Word; $[SysUtils.pas
功能 返回當前年份
說明 <NULL>
參考 function Windows.GetLocalTime
例子 SpinEdit1.Value := CurrentYear;
━━━━━━━━━━━━━━━━━━━━━
首部 function IncMonth(const DateTime: TDateTime; NumberOfMonths: Integer = 1): TDateTime; $[SysUtils.pas
功能 返回增加月份給日期
說明 NumberOfMonths爲負數時則減月份
參考 procedure SysUtils.DecodeDate;procedure SysUtils.IncAMonth;function SysUtils.EncodeDate;procedure SysUtils.ReplaceTime
例子 DateTimePicker1.Date := IncMonth(Date, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure IncAMonth(var Year, Month, Day: Word; NumberOfMonths: Integer = 1); $[SysUtils.pas
功能 返回增加月份給年月日
說明 NumberOfMonths爲負數時則減月份
參考 procedure System.Inc
例子
///////Begin IncAMonth
procedure TForm1.Button1Click(Sender: TObject);
var
vYear, vMonth, vDay: Word;
begin
DecodeDate(Date, vYear, vMonth, vDay);
IncAMonth(vYear, vMonth, vDay, SpinEdit1.Value);
DateTimePicker1.Date := EncodeDate(vYear, vMonth, vDay);
end;
///////End IncAMonth
━━━━━━━━━━━━━━━━━━━━━
首部 procedure ReplaceTime(var DateTime: TDateTime; const NewTime: TDateTime); $[SysUtils.pas
功能 用時間NewTime替換日期時間DateTime的時間部分
說明 Int(DateTime) + Frac(NewTime)
參考 function System.Trunc;function System.Abs;function System.Frac
例子
///////Begin ReplaceTime
procedure TForm1.Button1Click(Sender: TObject);
var
vDateTime: TDateTime;
begin
vDateTime := Now;
ReplaceTime(vDateTime, DateTimePicker1.Time);
Edit1.Text := DateTimeToStr(vDateTime);
end;
///////End ReplaceTime
━━━━━━━━━━━━━━━━━━━━━
首部 procedure ReplaceDate(var DateTime: TDateTime; const NewDate: TDateTime); $[SysUtils.pas
功能 用日期NewDate替換日期時間DateTime的日期部分
說明 Int(NewTime) + Frac(DateTime)
參考 procedure SysUtils.ReplaceTime
例子
///////Begin ReplaceDate
procedure TForm1.Button1Click(Sender: TObject);
var
vDateTime: TDateTime;
begin
vDateTime := Now;
ReplaceDate(vDateTime, DateTimePicker1.Date);
Edit1.Text := DateTimeToStr(vDateTime);
end;
///////End ReplaceDate
━━━━━━━━━━━━━━━━━━━━━
首部 function IsLeapYear(Year: Word): Boolean; $[SysUtils.pas
功能 返回年份Year是否是閏年
說明 (Year mod 4 = 0) and ((Year mod 100 <> 0) or (Year mod 400 = 0))
參考 <NULL>
例子 CheckBox1.Checked := IsLeapYear(SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function DateToStr(const DateTime: TDateTime): string; $[SysUtils.pas
功能 返回日期DateTime轉換成字符串
說明 轉換格式由系統變量ShortDateFormat控制
參考 function SysUtils.DateTimeToString;var SysUtils.ShortDateFormat
例子 Edit1.Text := DateToStr(Date);
━━━━━━━━━━━━━━━━━━━━━
首部 function TimeToStr(const DateTime: TDateTime): string; $[SysUtils.pas
功能 返回時間DateTime轉換成字符串
說明 轉換格式由系統變量LongTimeFormat控制
參考 function SysUtils.DateTimeToString;var SysUtils.LongTimeFormat
例子 Edit1.Text := TimeToStr(Date);
━━━━━━━━━━━━━━━━━━━━━
首部 function DateTimeToStr(const DateTime: TDateTime): string; $[SysUtils.pas
功能 返回日期時間DateTime轉換成字符串
說明 轉換格式由系統變量ShortDateFormat和LongTimeFormat控制
參考 function SysUtils.DateTimeToString
例子 Edit1.Text := DateTimeToStr(Now);
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToDate(const S: string): TDateTime; $[SysUtils.pas
功能 返回字符串S轉換成日期
說明 字符非日期表達時將引起異常
參考 function SysUtils.TryStrToDate
例子 DateTimePicker1.Date := StrToDate(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToDateDef(const S: string; const Default: TDateTime): TDateTime; $[SysUtils.pas
功能 返回字符串S轉換成日期
說明 字符非日期表達時則返回默認值Default
參考 function SysUtils.TryStrToDate
例子 DateTimePicker1.Date := StrToDateDef(Edit1.Text, Date);
━━━━━━━━━━━━━━━━━━━━━
首部 function TryStrToDate(const S: string; out Value: TDateTime): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成日期Value是否成功
說明 字符非日期表達時返回False並且Value將輸出爲0
參考 <NULL>
例子
///////Begin TryStrToDate
procedure TForm1.Button1Click(Sender: TObject);
var
vDateTime: TDateTime;
begin
CheckBox1.Checked := TryStrToDate(Edit1.Text, vDateTime);
DateTimePicker1.Date := vDateTime;
end;
///////End TryStrToDate
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToTime(const S: string): TDateTime; $[SysUtils.pas
功能 返回字符串S轉換成時間
說明 字符非時間表達時將引起異常
參考 function SysUtils.TryStrToTime
例子 DateTimePicker1.Time := StrToTime(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToTimeDef(const S: string; const Default: TDateTime): TDateTime; $[SysUtils.pas
功能 返回字符串S轉換成時間
說明 字符非時間表達時則返回默認值Default
參考 function SysUtils.TryStrToTime
例子 DateTimePicker1.Time := StrToTimeDef(Edit1.Text, Time);
━━━━━━━━━━━━━━━━━━━━━
首部 function TryStrToTime(const S: string; out Value: TDateTime): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成時間Value是否成功
說明 字符非時間表達時返回False並且Value將輸出爲0
參考 <NULL>
例子
///////Begin TryStrToTime
procedure TForm1.Button1Click(Sender: TObject);
var
vDateTime: TDateTime;
begin
CheckBox1.Checked := TryStrToTime(Edit1.Text, vDateTime);
DateTimePicker1.Time := vDateTime;
end;
///////End TryStrToTime
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToDateTime(const S: string): TDateTime; $[SysUtils.pas
功能 返回字符串S轉換成日期時間
說明 字符非日期時間表達時將引起異常
參考 function SysUtils.TryStrToDateTime
例子 Edit1.Text := DateTimeToStr(StrToDateTime(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrToDateTimeDef(const S: string; const Default: TDateTime): TDateTime; $[SysUtils.pas
功能 返回字符串S轉換成日期時間
說明 字符非日期時間表達時則返回默認值Default
參考 function SysUtils.TryStrToDateTime
例子 Edit1.Text := DateTimeToStr(StrToDateTimeDef(Edit2.Text, Now));
━━━━━━━━━━━━━━━━━━━━━
首部 function TryStrToDateTime(const S: string; out Value: TDateTime): Boolean; $[SysUtils.pas
功能 返回字符串S轉換成日期時間Value是否成功
說明 字符非日期時間表達時返回False並且Value將輸出爲0
參考 <NULL>
例子
///////Begin TryStrToDateTime
procedure TForm1.Button1Click(Sender: TObject);
var
vDateTime: TDateTime;
begin
CheckBox1.Checked := TryStrToDateTime(Edit1.Text, vDateTime);
Edit2.Text := DateTimeToStr(vDateTime);
end;
///////End TryStrToDateTime
━━━━━━━━━━━━━━━━━━━━━
首部 function FormatDateTime(const Format: string; DateTime: TDateTime): string; $[SysUtils.pas
功能 返回用指定的格式Format來格式化日期時間DateTime
說明 FormatDateTime('YYYY"年"MM"月"DD"日"', StrToDate('2002-03-09')) = '2002年03月09日'
參考 function SysUtils.DateTimeToString
例子 Edit2.Text := FormatDateTime(Edit1.Text, Now);
━━━━━━━━━━━━━━━━━━━━━
首部 procedure DateTimeToString(var Result: string; const Format: string; DateTime: TDateTime); $[SysUtils.pas
功能 用指定的格式Format來格式化日期時間DateTime並返回到字符串Result中
說明 <參見FormatDateTime>
參考 function System.SetString
例子 <參見FormatDateTime>
━━━━━━━━━━━━━━━━━━━━━
首部 function FloatToDateTime(const Value: Extended): TDateTime; $[SysUtils.pas
功能 返回浮點數轉換成日期時間類型
說明 如果浮點數超出範圍將觸發異常
參考 function System.Int
例子 Edit2.Text := DateTimeToStr(FloatToDateTime(StrToFloatDef(Edit1.Text, 0)));
━━━━━━━━━━━━━━━━━━━━━
首部 function SysErrorMessage(ErrorCode: Integer): string; $[SysUtils.pas
功能 返回系統中錯誤代碼所對應的信息
說明 此函可以有助於已習慣Windows編程的用戶使用
參考 function Windows.FormatMessage;function System.SetString
例子 Edit1.Text := SysErrorMessage(SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function GetLocaleStr(Locale, LocaleType: Integer; const Default: string): string; platform; $[SysUtils.pas
功能 返回當前系統指定參數的字符串值
說明 GetLocaleStr(GetThreadLocale, LOCALE_SLANGUAGE, '') = '中文(中國)'
參考 function Windows.GetLocaleInfo
例子 Edit1.Text := GetLocaleStr(GetThreadLocale, SpinEdit1.Value, '<NULL>');
━━━━━━━━━━━━━━━━━━━━━
首部 function GetLocaleChar(Locale, LocaleType: Integer; Default: Char): Char; platform; $[SysUtils.pas
功能 返回當前系統指定參數的字符值
說明 GetLocaleChar(GetThreadLocale, LOCALE_STHOUSAND, #0) = ','
參考 function Windows.GetLocaleInfo
例子 Edit1.Text := GetLocaleChar(GetThreadLocale, LOCALE_SLANGUAGE, #0);
━━━━━━━━━━━━━━━━━━━━━
首部 procedure GetFormatSettings; $[SysUtils.pas
功能 恢復系統參數設置
說明 日期時間格式等
參考 function Windows.GetThreadLocale;function Windows.GetLocaleStr
例子
///////Begin GetFormatSettings
procedure TForm1.Button1Click(Sender: TObject);
begin
ShortDateFormat := 'YYYY"年"MM"月"DD"日"';
ShowMessage(DateToStr(Date));
GetFormatSettings;
ShowMessage(DateToStr(Date));
end;
///////End GetFormatSettings
━━━━━━━━━━━━━━━━━━━━━
首部 function InquireSignal(RtlSigNum: Integer): TSignalState; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure AbandonSignalHandler(RtlSigNum: Integer); $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure HookSignal(RtlSigNum: Integer); $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure UnhookSignal(RtlSigNum: Integer; OnlyIfHooked: Boolean = True); $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure HookOSExceptions; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function MapSignal(SigNum: Integer; Context: PSigContext): LongWord; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure SignalConverter(ExceptionEIP: LongWord; FaultAddr: LongWord; ErrorCode: LongWord); $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure SetSafeCallExceptionMsg(Msg: String); $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure SetSafeCallExceptionAddr(Addr: Pointer); $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function GetSafeCallExceptionMsg: String; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function GetSafeCallExceptionAddr: Pointer; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function LoadLibrary(ModuleName: PChar): HMODULE; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function FreeLibrary(Module: HMODULE): LongBool; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function GetProcAddress(Module: HMODULE; Proc: PChar): Pointer; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function GetModuleHandle(ModuleName: PChar): HMODULE; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function GetPackageModuleHandle(PackageName: PChar): HMODULE; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure Sleep(milliseconds: Cardinal);{$IFDEF MSWINDOWS} stdcall; {$ENDIF} $[SysUtils.pas
功能 讓程序休眠一段時間
說明 以微米爲單位
參考 <NULL>
例子 Sleep(3000);
━━━━━━━━━━━━━━━━━━━━━
首部 function GetModuleName(Module: HMODULE): string; $[SysUtils.pas
功能 返回動態連接庫的名稱
說明 如果參數爲0則返回當前程序的名稱
參考 function Windows.GetModuleFileName
例子
///////Begin GetModuleName
procedure TForm1.Button1Click(Sender: TObject);
var
vHandle: THandle;
begin
vHandle := LoadLibrary(PChar(Edit1.Text));
Caption := GetModuleName(vHandle);
FreeLibrary(vHandle);
end;
///////End GetModuleName
━━━━━━━━━━━━━━━━━━━━━
首部 function ExceptionErrorMessage(ExceptObject: TObject; ExceptAddr: Pointer; Buffer: PChar; Size: Integer): Integer; $[SysUtils.pas
功能 返回操作指針失敗的信息長度
說明 信息放在緩衝Buffer中
參考 function Windows.VirtualQuery;function Windows.GetModuleFilename
例子
///////Begin ExceptionErrorMessage
procedure TForm1.Button1Click(Sender: TObject);
var
vBuffer: array[0..255] of Char;
begin
ExceptionErrorMessage(Self, Self, vBuffer, 255);
Caption := vBuffer;
end;
///////End ExceptionErrorMessage
━━━━━━━━━━━━━━━━━━━━━
首部 procedure ShowException(ExceptObject: TObject; ExceptAddr: Pointer); $[SysUtils.pas
功能 提示一個操作指針失敗的錯誤
說明 支持控制檯程序
參考 function SysUtils.ExceptionErrorMessage;var System.IsConsole;function System.FindResourceHInstance
例子 ShowException(Self, Self);
━━━━━━━━━━━━━━━━━━━━━
首部 procedure Abort; $[SysUtils.pas
功能 引起放棄的意外處理
說明 不顯示任何錯誤信息
參考 type SysUtils.EAbort
例子 Abort;
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure OutOfMemoryError; $[SysUtils.pas
功能 觸發內存益出異常
說明 <NULL>
參考 var SysUtils.OutOfMemory
例子 OutOfMemoryError;
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure Beep; $[SysUtils.pas
功能 觸發計算機出聲
說明 MessageBeep(0);
參考 function Windows.MessageBeep
例子 Beep;
━━━━━━━━━━━━━━━━━━━━━ 
首部 function ByteType(const S: string; Index: Integer): TMbcsByteType; $[SysUtils.pas
功能 返回字符串S位置Index上的字符在MBCS中類型
說明 多字節字符系統:Multi-Byte Character System (MBCS)
參考 var SysUtils.SysLocale
例子 SpinEdit1.Value := Ord(ByteType(Edit1.Text, SpinEdit2.Value));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrByteType(Str: PChar; Index: Cardinal): TMbcsByteType; $[SysUtils.pas
功能 返回指針字符串Str位置Index上的字符在MBCS中類型
說明 Index從0開始
參考 var SysUtils.SysLocale
例子 SpinEdit1.Value := Ord(StrByteType(PChar(Edit1.Text), SpinEdit2.Value));
━━━━━━━━━━━━━━━━━━━━━
首部 function ByteToCharLen(const S: string; MaxLen: Integer): Integer; $[SysUtils.pas
功能 返回字符串S中有多少個多字節字符
說明 MaxLen指定處理字符個數
參考 function SysUtils.ByteToCharIndex
例子 SpinEdit1.Value := ByteToCharLen(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function CharToByteLen(const S: string; MaxLen: Integer): Integer; $[SysUtils.pas
功能 返回字符串S中有多少個字符
說明 MaxLen指定處理多字節字符個數
參考 var SysUtils.SysLocale
例子 SpinEdit1.Value := CharToByteLen(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function ByteToCharIndex(const S: string; Index: Integer): Integer; $[SysUtils.pas
功能 返回字符位置對應的多字節字符位置
說明 ByteToCharIndex('你好', 2) = 1;ByteToCharIndex('你好', 3) = 2
參考 function SysUtils.NextCharIndex
例子 SpinEdit1.Value := ByteToCharIndex(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function CharToByteIndex(const S: string; Index: Integer): Integer; $[SysUtils.pas
功能 返回多字節字符位置對應的字符起始位置
說明 CharToByteIndex('你好', 1) = 1;CharToByteIndex('你好', 2) = 3
參考 function System.Length
例子 SpinEdit1.Value := CharToByteIndex(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function StrCharLength(const Str: PChar): Integer; $[SysUtils.pas
功能 返回第一個字符的寬度
說明 參數爲空則返回0
參考 function Windows.CharNext
例子 SpinEdit1.Value := StrCharLength(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function StrNextChar(const Str: PChar): PChar; $[SysUtils.pas
功能 返回字符指針Str的下一個字符指針
說明 StrNextChar('1234') = '234';
參考 function Windows.CharNext
例子 Edit2.Text := StrNextChar(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function CharLength(const S: String; Index: Integer): Integer; $[SysUtils.pas
功能 返回字符串中指定位置的字符寬度
說明 CharLength('English漢', 1) = 1;CharLength('English漢', 8) = 2
參考 function System.Assert;function SysUtils.StrCharLength
例子 SpinEdit1.Value := CharLength(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function NextCharIndex(const S: String; Index: Integer): Integer; $[SysUtils.pas
功能 返回下一個字符的位置
說明 CharLength('你好', 1) = 3;CharLength('你好', 3) = 5
參考 function System.Assert;function SysUtils.StrCharLength
例子 SpinEdit1.Value := NextCharIndex(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function IsPathDelimiter(const S: string; Index: Integer): Boolean; $[SysUtils.pas
功能 返回字符串S中指定位置Index上是否是一個路徑分隔符
說明 IsPathDelimiter('C:/Windows', 3) = True
參考 const SysUtils.PathDelim;function SysUtils.ByteType
例子 CheckBox1.Checked := IsPathDelimiter(Edit1.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function IsDelimiter(const Delimiters, S: string; Index: Integer): Boolean; $[SysUtils.pas
功能 返回字符串S中指定位置Index上是否是一個分隔符Delimiters
說明 IsDelimiter('@', '[email protected]', 8) = True
參考 function SysUtils.ByteType
例子 CheckBox1.Checked := IsDelimiter(Edit1.Text, Edit2.Text, SpinEdit1.Value);
━━━━━━━━━━━━━━━━━━━━━
首部 function IncludeTrailingPathDelimiter(const S: string): string; $[SysUtils.pas
功能 返回包括最後路徑分隔符
說明 最後一個字符是路徑分隔符則不變;否則加上一個路徑分隔符返回
參考 function SysUtils.IsPathDelimiter;function System.Length
例子 Edit1.Text := IncludeTrailingPathDelimiter(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function IncludeTrailingBackslash(const S: string): string; platform; $[SysUtils.pas
功能 返回包括最後斜線
說明 Result := IncludeTrailingPathDelimiter(S);
參考 function SysUtils.IncludeTrailingPathDelimiter
例子 Edit1.Text := IncludeTrailingBackslash(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExcludeTrailingPathDelimiter(const S: string): string; $[SysUtils.pas
功能 返回排除最後路徑分隔符
說明 最後一個字符不是路徑分隔符則不變;否則減去最後的路徑分隔符返回
參考 function SysUtils.IsPathDelimiter;function System.Length;function System.SetLength
例子 Edit1.Text := ExcludeTrailingPathDelimiter(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function ExcludeTrailingBackslash(const S: string): string; platform; $[SysUtils.pas
功能 返回排除最後斜線
說明 Result := ExcludeTrailingPathDelimiter(S)
參考 function SysUtils.ExcludeTrailingPathDelimiter
例子 Edit1.Text := ExcludeTrailingBackslash(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function LastDelimiter(const Delimiters, S: string): Integer; $[SysUtils.pas
功能 返回最後一個分隔符的位置
說明 LastDelimiter('.', 'kingron.myetang.com') = 16
參考 function SysUtils.StrScan;function SysUtils.ByteType
例子 SpinEdit1.Value := LastDelimiter(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiCompareFileName(const S1, S2: string): Integer; $[SysUtils.pas
功能 返回比較兩個文件名
說明 當S1>S2返回值>0;當S1<S2返回值<0;當S1=S2返回值=0;區分大小寫
參考 function SysUtils.AnsiCompareStr
例子 SpinEdit1.Value := AnsiCompareFileName(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function SameFileName(const S1, S2: string): Boolean; $[SysUtils.pas
功能 返回兩個文件名是否相等
說明 區分大小寫
參考 function SysUtils.AnsiCompareFileName
例子 CheckBox1.Checked := SameFileName(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiLowerCaseFileName(const S: string): string; $[SysUtils.pas
功能 返回小寫文件名
說明 在非多字節字符系統上相當於AnsiLowerCase
參考 function SysUtils.AnsiLowerCase
例子 Edit2.Text := AnsiLowerCaseFileName(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiUpperCaseFileName(const S: string): string; $[SysUtils.pas
功能 返回大寫文件名
說明 在非多字節字符系統上相當於AnsiUpperCase
參考 function SysUtils.AnsiUpperCase
例子 Edit2.Text := AnsiUpperCaseFileName(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiPos(const Substr, S: string): Integer; $[SysUtils.pas
功能 返回子串Substr在字符中第一次出現的位置
說明 不存在則返回0
參考 SysUtils.AnsiStrPos
例子 SpinEdit1.Value := AnsiPos(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiStrPos(Str, SubStr: PChar): PChar; $[SysUtils.pas
功能 返回指針子串Substr在指針字符中第一次出現的指針位置
說明 不存在則返回nil
參考 function SysUtils.StrByteType
例子 Edit3.Text := AnsiStrPos(PChar(Edit1.Text), PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━ 
首部 function AnsiStrRScan(Str: PChar; Chr: Char): PChar; $[SysUtils.pas
功能 返回在指針字符串Str搜索字符Chr最後一個出現的地址
說明 支持多字節字符系統;AnsiStrRScan('kingron.myetang.com', '.') = '.com'
參考 function SysUtils.AnsiStrScan
例子 Edit2.Text := AnsiStrScan(PChar(Edit1.Text), '.');
━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiStrScan(Str: PChar; Chr: Char): PChar; $[SysUtils.pas
功能 返回在指針字符串Str搜索字符Chr第一個出現的地址
說明 支持多字節字符系統;AnsiStrRScan('kingron.myetang.com', '.') = '.myetang.com'
參考 function SysUtils.StrScan
例子 Edit2.Text := AnsiStrScan(PChar(Edit1.Text), '.');
━━━━━━━━━━━━━━━━━━━━━
首部 function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string; $[SysUtils.pas
功能 返回替換後的字符串
說明 rfReplaceAll爲替換全部內容;rfIgnoreCase爲忽略大小寫
參考 function SysUtils.AnsiUpperCase;function SysUtils.AnsiPos;function System.Copy
例子
///////Begin StringReplace
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Values['[]'] :=
StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, []);
Memo1.Lines.Values['[rfReplaceAll]'] :=
StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, [rfReplaceAll]);
Memo1.Lines.Values['[rfIgnoreCase]'] :=
StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, [rfIgnoreCase]);
Memo1.Lines.Values['[rfReplaceAll, rfIgnoreCase]'] :=
StringReplace(Edit1.Text, Edit2.Text, Edit3.Text, [rfReplaceAll, rfIgnoreCase]);
end;
///////End StringReplace
━━━━━━━━━━━━━━━━━━━━━
首部 function WrapText(const Line, BreakStr: string; const BreakChars: TSysCharSet; MaxCol: Integer): string; overload; $[SysUtils.pas
首部 function WrapText(const Line: string; MaxCol: Integer = 45): string; overload; $[SysUtils.pas
功能 返回對字符串自動換行
說明 Result := WrapText(Line, sLineBreak, [' ', '-', #9], MaxCol);
參考 function SysUtils.CharLength;function SysUtils.CompareText
例子 Memo1.Text := WrapText(Memo2.Text, SpinEdit1.Value); 
━━━━━━━━━━━━━━━━━━━━━
首部 function FindCmdLineSwitch(const Switch: string; const Chars: TSysCharSet; IgnoreCase: Boolean): Boolean; overload; $[SysUtils.pas
首部 function FindCmdLineSwitch(const Switch: string): Boolean; overload; $[SysUtils.pas
首部 function FindCmdLineSwitch(const Switch: string; IgnoreCase: Boolean): Boolean; overload; $[SysUtils.pas
功能 返回程序命令參數是否找到
說明 Result := FindCmdLineSwitch(Switch, SwitchChars, True);
參考 function System.ParamCount;function System.ParamStr;function SysUtils.AnsiCompareText
例子 CheckBox1.Checked := FindCmdLineSwitch(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure FreeAndNil(var Obj); $[SysUtils.pas
功能 釋放對象Obj並賦爲空
說明 如果對象已經釋放資源將觸發異常
參考 type System.TObject
例子
///////Begin FreeAndNil
procedure TForm1.Button1Click(Sender: TObject);
var
Temp: TObject;
begin
Temp := TObject.Create;
Temp.Free;
ShowMessage(Format('%p', [Pointer(Temp)]));

Temp := TObject.Create;
FreeAndNil(Temp);
ShowMessage(Format('%p', [Pointer(Temp)]));
end;
///////End FreeAndNil
━━━━━━━━━━━━━━━━━━━━━
首部 function Supports(const Instance: IInterface; const IID: TGUID; out Intf): Boolean; overload; $[SysUtils.pas
首部 function Supports(const Instance: TObject; const IID: TGUID; out Intf): Boolean; overload; $[SysUtils.pas
首部 function Supports(const Instance: IInterface; const IID: TGUID): Boolean; overload; $[SysUtils.pas
首部 function Supports(const Instance: TObject; const IID: TGUID): Boolean; overload; $[SysUtils.pas
首部 function Supports(const AClass: TClass; const IID: TGUID): Boolean; overload; $[SysUtils.pas
功能 返回對象是否支持指定的接口
說明 Result := AClass.GetInterfaceEntry(IID) <> nil;
參考 type System.TObject
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━ 
首部 function CreateGUID(out Guid: TGUID): HResult; $[SysUtils.pas
功能 返回創建全局標識是否成功
說明 返回S_OK表示成功
參考 function Windows.CoCreateGuid
例子
///////Begin CreateGUID
procedure TForm1.Button1Click(Sender: TObject);
var
vGUID: TGUID;
begin
CreateGUID(vGUID);
Edit1.Text := GUIDToString(vGUID);
end;
///////End CreateGUID
━━━━━━━━━━━━━━━━━━━━━
首部 function StringToGUID(const S: string): TGUID; $[SysUtils.pas
功能 返回字符串S轉換成全局標識
說明 如果字符串非法將觸發異常
參考 fuction Windows.Succeeded
例子 Edit2.Text := GUIDToString(StringToGUID(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部 function GUIDToString(const GUID: TGUID): string; $[SysUtils.pas
功能 返回全局標識GUID轉換成字符串
說明 <NULL>
參考 fuction Windows.Succeeded
例子 Edit2.Text := GUIDToString(StringToGUID(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━ 
首部 function IsEqualGUID(const guid1, guid2: TGUID): Boolean; $[SysUtils.pas
功能 返回兩個全局標識是否相同
說明 function IsEqualGUID; external 'ole32.dll' name 'IsEqualGUID';
參考 <NULL>
例子 CheckBox1.Checked := IsEqualGUID(StringToGUID(Edit1.Text), StringToGUID(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━ 
首部 function LoadPackage(const Name: string): HMODULE; $[SysUtils.pas
功能 返回載入包資源
說明 <NULL>
參考 function SysUtils.SafeLoadLibrary;function SysUtils.InitializePackage;function Windows.FreeLibrary
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure UnloadPackage(Module: HMODULE); $[SysUtils.pas
功能 取消載入包資源
說明 <NULL>
參考 function SysUtils.FinalizePackage;function Windows.FreeLibrary
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure GetPackageInfo(Module: HMODULE; Param: Pointer; var Flags: Integer; InfoProc: TPackageInfoProc); $[SysUtils.pas
功能 返回包的信息
說明 <NULL>
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function GetPackageDescription(ModuleName: PChar): string; $[SysUtils.pas
功能 返回包的描述
說明 <NULL>
參考 function System.LoadResourceModule;function Windows.LoadLibraryEx
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure InitializePackage(Module: HMODULE); $[SysUtils.pas
功能 初始化包
說明 <NULL>
參考 function Windos.GetProcAddress
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure FinalizePackage(Module: HMODULE); $[SysUtils.pas
功能 終止化包
說明 <NULL>
參考 function Windos.GetProcAddress
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure RaiseLastOSError; $[SysUtils.pas
功能 觸發操作系統的最後一個異常
說明 如果沒有出現異常則默認調用Api函數異常
參考 function Windows.GetLastError
例子 RaiseLastOSError;
━━━━━━━━━━━━━━━━━━━━━
首部 procedure RaiseLastWin32Error; deprecated; $[SysUtils.pas
功能 觸發Win32系統的最後一個異常
說明 如果沒有出現異常則默認調用Api函數異常
參考 function SysUtils.RaiseLastOSError;
例子 RaiseLastWin32Error;
━━━━━━━━━━━━━━━━━━━━━ 
首部 function Win32Check(RetVal: BOOL): BOOL; platform; $[SysUtils.pas
功能 返回檢測調用系統Api函數返回結果
說明 如果RetVal爲False則觸發異常
參考 function SysUtils.RaiseLastOSError
例子 CheckBox2.Checked := Win32Check(CheckBox1.Checked);
━━━━━━━━━━━━━━━━━━━━━ 
首部 procedure AddTerminateProc(TermProc: TTerminateProc); $[SysUtils.pas
功能 添加一個退出過程到系統中
說明 執行AddTerminateProc(nil)將導致系統異常
參考 const System.TerminateProcList
例子
///////Begin AddTerminateProc
function NewTerminateProc: Boolean;
begin
Result := True;
ShowMessage('NewTerminateProc');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
AddTerminateProc(NewTerminateProc);
end;
///////End AddTerminateProc
━━━━━━━━━━━━━━━━━━━━━
首部 function CallTerminateProcs: Boolean; $[SysUtils.pas
功能 返回調用退出過程是否成功
說明 不建議調用
參考 const System.TerminateProcList
例子 CallTerminateProcs;
━━━━━━━━━━━━━━━━━━━━━ 
首部 function GDAL: LongWord; $[SysUtils.pas
功能 <NULL>
說明 <NULL>
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure RCS; $[SysUtils.pas
功能 <NULL>
說明 <NULL>
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 procedure RPR; $[SysUtils.pas
功能 <NULL>
說明 <NULL>
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function SafeLoadLibrary(const Filename: string; ErrorMode: UINT = SEM_NOOPENFILEERRORBOX): HMODULE; $[SysUtils.pas
功能 返回安全方式載入動態連接庫資源
說明 <參見LoadLibrary>
參考 function Windows.LoadLibrary
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function GetEnvironmentVariable(const Name: string): string; overload; $[SysUtils.pas
功能 返回過程環境變量
說明 配合SetEnvironmentVariable函數使用
參考 function Windows.GetEnvironmentVariable
例子 Edit1.Text := GetEnvironmentVariable(Edit2.Text);
///////Begin GetEnvironmentVariable
procedure TForm1.Button1Click(Sender: TObject);
begin
SetEnvironmentVariable(PChar(Edit2.Text), PChar(Edit3.Text));
Edit1.Text := GetEnvironmentVariable(Edit2.Text);
end;
///////End GetEnvironmentVariable
━━━━━━━━━━━━━━━━━━━━━
首部 function InterlockedIncrement(var I: Integer): Integer; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function InterlockedDecrement(var I: Integer): Integer; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function InterlockedExchange(var A: Integer; B: Integer): Integer; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
━━━━━━━━━━━━━━━━━━━━━
首部 function InterlockedExchangeAdd(var A: Integer; B: Integer): Integer; $[SysUtils.pas
功能 <NULL>
說明 Kylix函數
參考 <NULL>
例子 <NULL>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章