delphi自定义函数收集1

合集下载

Delphi函数大全

Delphi函数大全

Delphi函数大全首部function Languages: TLanguages; $[SysUtils.pas功能返回系统语言对象说明通过此函数可以得到系统的语言环境参考type SysUtils.TLanguages例子///////Begin Languagesprocedure TForm1.Button1Click(Sender: TObject);varI: Integer;beginMemo1.Clear;for I := 0 to Languages.Count - 1 do;end;///////End Languages━━━━━━━━━━━━━━━━━━━━━首部function AllocMem(Size: Cardinal): Pointer; $[SysUtils.pas 功能返回一个指定大小Size的内存块说明配合用FreeMem释放资源参考function System.GetMem例子///////Begin AllocMemprocedure TForm1.Button1Click(Sender: TObject);varI: PInteger;beginI := 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 AddExitProcusesShellApi;procedure ExitProc;beginShellExecute(0, 'Open', 'Calc.exe', nil, nil, SW_SHOW);end;procedure TForm1.Button1Click(Sender: TObject);beginAddExitProc(ExitProc);end;////////End AddExitProc━━━━━━━━━━━━━━━━━━━━━首部function NewStr(const S: string): PString; deprecated; $[SysUtils.pas功能返回一个新的字符串指针地址说明字符串S为空时返回NullStr参考procedure System.New例子////////Begin NewStr,DisposeStrprocedure TForm1.Button1Click(Sender: TObject);varP: PString;beginP := 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 AssignStrprocedure TForm1.Button1Click(Sender: TObject);varP: PString;beginP := 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 AppendStrprocedure TForm1.Button1Click(Sender: TObject);varS: string;beginS := 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 pareString例子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 pareString例子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 pareString例子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 pareString例子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 pareString例子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 pareString例子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 pareStringW例子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 pareStringW例子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 AnsiExtractQuotedStrprocedure TForm1.Button1Click(Sender: TObject);varP: PChar;beginP := 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(V alue: Integer; Digits: Integer): string; overload; $[SysUtils.pas首部function IntToHex(V alue: 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转换成整数V alue是否成功说明字符串非整数表达时返回False并且Value将输出为0参考procedure System.Val例子///////Begin TryStrToIntprocedure TForm1.Button1Click(Sender: TObject);varI: Integer;beginCheckBox1.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 TryStrToInt64procedure TForm1.Button1Click(Sender: TObject);varI: Int64;beginCheckBox1.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 TryStrToBoolprocedure TForm1.Button1Click(Sender: TObject);varB: Boolean;beginSetLength(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 TryStrToBoolfunction TryStrToBool(const S: string; out Value: Boolean): Boolean;function CompareWith(const aArray: array of string): Boolean;varI: Integer;beginResult := False;for I := Low(aArray) to High(aArray) doif AnsiSameText(S, aArray[I]) thenbeginResult := True;Break;end;end;varLResult: Extended;beginResult := TryStrToFloat(S, LResult);if Result thenValue := LResult <> 0elsebeginResult := True; //修正处VerifyBoolStrArray;if CompareWith(TrueBoolStrs) thenV alue := Trueelse if CompareWith(FalseBoolStrs) thenV alue := FalseelseResult := 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,FileCloseprocedure TForm1.Button1Click(Sender: TObject);varI: Integer;beginI := 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 FileCreateprocedure TForm1.Button1Click(Sender: TObject);varI: Integer;beginI := 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,FileDateToDateTimeprocedure TForm1.Button1Click(Sender: TObject);beginSpinEdit1.Value := FileAge(Edit1.Text);if SpinEdit1.Value > 0 thenEdit2.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,FindCloseprocedure TForm1.Button1Click(Sender: TObject);varvSearchRec: TSearchRec;I: Integer;beginMemo1.Clear;I := FindFirst(Edit1.Text, faAnyFile, vSearchRec);while I = 0 do begin;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 FileGetDateprocedure TForm1.Button1Click(Sender: TObject);varI: Integer;beginI := FileOpen(Edit1.Text, fmOpenRead);if I < 0 then Exit;SpinEdit1.Value := FileGetDate(I);Edit2.Text := DateTimeToStr(FileDateToDateTime(SpinEdit1.Value));FileClose(I);end;///////End FileGetDate━━━━━━━━━━━━━━━━━━━━━真诚的海2005-7-26 10:53首部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 stDelimiter;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 stDelimiter;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 stDelimiter;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 stDelimiter;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 stDelimiter;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 ExpandFileNameCaseprocedure TForm1.Button1Click(Sender: TObject);varvFilenameCaseMatch: TFilenameCaseMatch;beginEdit1.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。

更全的Delphi函数参考大全

更全的Delphi函数参考大全

更全的Delphi函数参考⼤全Delphi函数参考⼤全⽥秧收集整理第1章字符串处理函数1.1 AdjustLineBreaks(S,Style) 返回将字符串的⾏分隔符调整为CR/LF序列1.2 AnsiCompareStr(S1,S2) 反回⽐较两个字符串1.3 AnsiCompareText(S1,S2) 反回⽐较两个字符串1.4 AnsiContainsStr(串1,串2) 返回字符串1是否包含⼦串21.5 AnsiContainsText(串1,串2) 返回字符串1是否包含⼦串21.6 AnsiDeQdStr(S,Q) 返回以字符Q为引号的表现形式原形1.7 AnsiEndsStr(串2,串1) 返回字符串1是否以⼦串2结尾1.8 AnsiEndsText(串2,串1) 返回字符串1是否以⼦串2结尾1.9 AnsiExtractQdStr(varSrc,Q) 返回以字符Q为引号的表现形式原形1.10 AnsiIndexStr(串1, 数组) 返回字符串1在字符串数组数组中的位置1.11 AnsiIndexText(串1, 数组) 返回字符串1在字符串数组数组中的位置1.12 AnsiLastChar(S) 返回字符串S的最后⼀个指针字符1.13 AnsiLowerCase(S) 返回字符串S的⼩写形式1.14 AnsiMatchStr(串1, 数组) 返回字符串数组数组中是否包含字符串11.15 AnsiMatchText(串1, 数组) 返回字符串数组数组中是否包含字符串11.16 AnsiQdStr(S,Q) 返回字符串S以字符Q为引号的表现形式1.17 AnsiReplaceStr(串1,串2,串3) 返回字符串1中⽤⼦串2替换成⼦串3的结果1.18 AnsiReplaceText(串1,串2,串3) 返回字符串1中⽤⼦串2替换成⼦串3的结果1.19 AnsiResemblesText(串1, 串2) 返回两个字符串是否相似1.20 AnsiSameStr(S1,S2) 返回两个字符串是否相等1.21 AnsiSameText(S1,S2) 返回两个字符串是否相等1.22 AnsiStartsStr(串2,串1) 返回字符串1是否以⼦串2开头1.23 AnsiStartsText(串2,串1) 返回字符串1是否以⼦串2开头1.24 AnsiStrComp(S1,S2) 返回⽐较两个指针字符串1.25 AnsiStrIComp(S1,S2) 返回⽐较两个指针字符串1.26 AnsiString 短字符串转为长字符串1.27 AnsiStrLastChar(P) 返回指针字符串P的最后⼀个指针字符1.28 AnsiStrLComp(S1,S2,N) 返回⽐较两个指针字符串指定长度1.29 AnsiStrLComp函数返回⽐较两个指针字符串指定长度1.30 AnsiStrLIComp(S1,S2,N) 返回⽐较两个指针字符串指定长度1.31 AnsiStrLower(Str) 返回指针字符串⼩写形式1.32 AnsiStrPos函数返回指针字符串Str2在Str1中第⼀个出现的地址1.33 AnsiStrRScan函数返回指针字符串Str2在Str1中最后⼀个出现的地址1.34 AnsiStrScan函数返回指针字符串Str2在Str1中第⼀个出现的地址1.35 AnsiStrUpper(Str) 返回指针字符串⼤写形式1.36 AnsiUpperCase(S) 返回字符串S的⼤写形式1.37 AppendStr(P, S) 在字符串P后追加字符串S1.38 AssignStr(P, S) 将字符串S更新给字符串指针P1.39 ByteToBin 字节转⼆进制串1.40 CompareMem(P1,P2,N) 返回⽐较两个内存指针1.41 CompareStr(S1,S2) 返回⽐较两个字符1.42 CompareText(S1,S2) 返回⽐较两个字符串1.43 Concat函数连接两个或多个字符串为⼀个字符串1.44 Copy函数返回字符串1从K开始的N个字符1.45 DecodeSoundexInt(AValue) 返回探测整数的解码1.46 DecodeSoundexWord(AValue) 返回探测⽂字数值的解码1.47 Delete(s,k,n)过程删除字符串中指定的字符串1.48 DisposeStr(P) 释放字符串指针P资源1.49 DupeString(串1,N) 返回字符串1的N个复本1.50 ExtractStrings函数1.51 GetHzPy 取汉字的拼⾳1.52 High(数组) 返回数组下标的最⼤值1.53 IfThen(AValue ATrue,AFalse) 返回指定的逻辑字符串1.54 Insert(s1,s2,n)过程插⼊⼀个字符(串)1.55 InStr 判断s1是否包含在s2中1.56 IntToByte 返回整数Value转换成字节数1.57 IntToHex(ValueDigits) 返回整数Value转换成⼗六进制表现结果1.58 IntToStr(Value) 返回整数Value转换成字符串1.59 IntToStrSp 带分隔符的整数-字符转换1.60 IsValidIdent(Ident) 返回字符串Ident是否是正确的标识符1.61 LeftStr(串1, N) 返回字符串1左边的N个字符1.62 Length函数返回指定字符串的长度1.63 LineStart函数1.64 LinesToStr 多⾏⽂本转单⾏(换⾏符转’\n’)1.65 Low(数组) 返回数组下标的最⼩值1.66 LowerCase(S) 返回字符串S的⼩写形式1.67 MidStr(串1,K,N) 返回字符串1从K开始的N个字符1.68 NewStr(S) 返回⼀个新的字符串指针地址1.69 Pchar(S)函数长字符串变量S转为指针类型1.70 PosEx函数返回指针字符串Str2在Str1中第⼀个出现的地址1.71 Pos函数返回指针字符串Str2在Str1中第⼀个出现的地址1.72 QdStr(S) 返回字符串S在pascal中的表现形式1.73 QuotedStr函数返回字符串S在pascal中的表现形式1.74 RandomFrom(数组) 随机返回字符串数组数组中的⼀个元素1.75 ReverseString(串1) 返回字符串1的反序1.76 RightStr(串1, N) 返回字符串1右边的N个字符1.77 SameText(S1,S2) 返回两个字符串是否相等1.78 SearchBuf() 返回第⼀个搜索到的指针位置1.79 SetLength(S,n)过程设置字符串或动态数组长度1.80 SetString过程1.81 ShortString 长字符串转为短字符串1.82 Soundex(串1,N) 返回探测字符串1.83 SoundexCompare(串1,串2,N) 返回⽐较两个字符串的探测字符串的结果1.84 SoundexInt(串1,N) 返回探测整数1.85 SoundexProc(串1,串2) 返回两个字符串的探测字符串是否相同1.86 SoundexSimilar(串1,串2,N) 返回两个字符串的探测字符串是否相同1.87 SoundexWord(串1) 返回探测⽂字数值1.88 Spc 返回空格串1.89 StrCat函数连接两个指针字符串1.90 StrComp函数⽐较两个指针字符串1.91 StrCopy函数将指针字符串2复制到指针字符串1中1.92 StrECopy函数将⼀个串复制到另⼀个串并返回结果字符串尾部的指针1.93 StrEnd函数返回指向字符串尾部的指针1.94 StringOfChar函数1.95 StringReplace函数返回字符串1中⽤⼦串2替换成⼦串3的结果1.96 StrLCat函数将⼀串中的字符附加到另⼀串尾并返回合并的字符串1.97 StrLComp函数返回⽐较两个指针字符串指定长度1.98 StrLCopy函数将指针字符串2指定长度n复制到指针字符串1中1.99 StrLen函数返回字符串中的字符数1.100 StrLIComp函数以最⼤长度⽐较两个字符串(不区分⼤⼩写)1.101 StrLower函数返回字符串S的⼩写形式1.102 StrMove函数将指针串2指定内存数量n复制覆盖到指针串1中1.103 StrPCopy函数返回将指针字符串2复制到指针字符串1中1.104 StrPLCopy函数将字符串2指定长度n复制到指针字符串1中1.105 StrPos函数返回指针字符串Str2在Str1中第⼀个出现的地址1.106 StrRScan函数返回指针字符串Str2在Str1中最后⼀个出现的地址1.107 StrScan函数返回指针字符串Str2在Str1中第⼀个出现的地址1.108 StrToBool(S) 返回字符串S转换成逻辑值1.109 StrToBoolDef(S, Default) 返回字符串S转换成逻辑值1.110 StrToInt(S) 返回字符串S转换成整数1.111 StrToInt64(S) 返回字符串S转换成六⼗四位整数1.112 StrToInt64Def(S, Default) 返回字符串S转换成六⼗四位整数1.113 StrToIntDef(S,Default) 返回字符串S转换成整数1.114 StrToLines 单⾏⽂本转多⾏(’\n’转换⾏符)1.115 StrUpper函数返回字符串S的⼤写形式1.116 Str过程将数值转换为字符串1.117 StuffString(串1,K,N, 串2) 返回嵌套字符串1.118 StuffString函数返回嵌套字符串1.119 SwapStr 交换字串1.120 Trim(S) 返回除去字符串S左右不可见字符1.121 TrimLeft(S) 返回除去字符串S左边不可见字符1.122 TrimRight(S) 返回除去字符串S右边不可见字符1.123 TryStrToBool(S,outValue) 返回字符串S转换成逻辑值Value是否成功1.124 TryStrToInt(S,outValue) 返回字符串S转换成整数Value是否成功1.125 TryStrToInt64(S,outValue) 返回字串S转换成六⼗四位整数值是否成功1.126 UpperCase(S) 返回字符串S的⼤写形式1.127 Val过程将字符串转换为整型值1.128 VarArrayCreate([0,n],类型) 创建⼀个指定类型的数组1.129 VarArrayHighBound(Array,1) 返回数组上标1.130 VarArrayLowBound(Array,1) 返回数组下标1.131 VarArrayOf(S1,S2...Sn) 变量转数组1.132 VarType(vS) 返回变体类型的类型代码1.133 WideCompareStr(S1,S2) 返回⽐较两个双字节字符串1.134 WideCompareText(S1,S2) 返回⽐较两个双字节字符串1.135 WideLowerCase(S) 返回双字节字符串的⼩写形式1.136 WideSameStr(S1,S2) 返回两个双字节字符串是否相同1.137 WideSameText(S1,S2) 返回两个双字节字符串是否相同1.138 WideUpperCase(S) 返回双字节字符串的⼤写形式第2章数学计算函数2.1 Abs函数绝对值2.2 Ceil(const X:Extended):Integer 返回最⼩整数>=X,|X|2.3 CompareValue函数浮点数⽐较2.4 DivMod过程16位整数除法⼀次调⽤得出结果和余数2.5 EnsureRange函数范围切断函数2.6 Exp函数e的X次⽅(e=1.7314626)2.7 Floor(const X:Extended):Integer 返回最⼤整数<=X,|X|2.8 Frac函数返回参数的⼩数部分2.9 InRange函数范围测试函数2.10 Int函数取整2.11 IsZero函数零测试,若值为0(或者是⾮常⾮常接近于0)则返回真2.12 Ldexp函数返回X*2^P 2.13 Ln函数⾃然对数函数2.14 Log10函数常⽤对数函数2.15 Log2函数基数为2的X对数2.16 LogN函数基数为N的X对数2.17 Max函数最⼤值2.18 Min函数最⼩值2.19 Pi函数返回圆周率Pi2.20 Poly(const X:Extended;constCoefficients:arrayofDouble):Extended 计算⼀元多项式A[0]+A[1]*X+...+A[N]*X^N在变量X时的值2.21 Power函数指数函数:任意基数的任意幂2.22 Randomize 随机种⼦2.23Random[(Range:Integer)] 整数参数返回0<=Random(Range)2.24 RoundTo函数如Frac(X)<0.5则返回X否则返回X+1,其缺省凑整到1/1002.25 SameValue函数浮点数⽐较:两数是否相等2.26 Sign函数符号函数2.27 Sqr函数平⽅函数2.28 Sqrt函数平⽅根函数2.29 Trunc函数将实型值截取为整型值2.30 VarComplexAbs函数2.31 VarComplexAbsSqr函数2.32 VarComplexAngle函数第3章序数函数3.1 Inc过程参数⾃加3.2 Odd函数判断是否是奇数3.3 Ord函数返回⼀序数类型所对应的序数值3.4 Pred函数返回序数的前者3.6 Succ函数返回序数的后者3.5 Dec 函数参数⾃减第4章、三⾓函数4.1 ArcCos函数返回余弦函数的反函数值4.2 ArcCosh函数返回余弦函数的反函数值4.3 ArcCot函数返回余切函数的反函数值4.4 ArcCoth函数返回余切函数的反函数值4.5 ArcCsc函数返回余割函数的反函数值4.6 ArcCsch函数返回余割函数的反函数值4.7 ArcSec函数返回正割函数的反函数值4.8 ArcSech函数返回正割函数的反函数值4.9 ArcSin函数返回正弦函数的反函数值4.1 ArcSinh函数返回正弦函数的反函数值4.1 ArcTan函数返回正切函数的反函数值4.1 ArcTan2函数返回正切函数的反函数值4.1 ArcTanh函数返回正切函数的反函数值4.1 Cos函数返回余弦函数值4.2 CoseCant函数返回余割函数值4.2 Cosh函数返回余弦函数值4.2 Cot函数返回余切函数值4.2 Cotan函数返回余切函数值4.2 Csc函数返回余割函数值4.2 Csch函数返回余割函数值4.2 Hypot函数返回余弦函数值4.2 Sec函数返回正割函数值4.2 Secant函数返回正割函数值4.2 Sech函数返回正割函数值4.3 Sin函数返回正弦函数值4.3 SinCos函数返回正余弦函数值4.3 Sinh函数返回正弦函数值4.3 Tan函数返回正切函数值4.3 Tanh函数返回正切函数值4.3 Coth函数返回余割函数值第5章、统计函数5.1 MaxIntValue函数返回Integer数组中最⼤整数5.2 MaxValue函数返回Double数组最⼤数5.3 Max函数返回参数组最⼤数5.4 MeanAndStdDev过程在⼀次调⽤中计算算术平均值(Mean)和标准偏差(StdDev)5.5 Mean函数算术平均值5.6 MinIntValue函数返回Integer数组中最⼩整数5.7 MinValue函数返回Double数组中最⼩数5.8 Min函数返回参数组最⼩数5.9 MomentSkewKurtosis函数计算统计分解的核⼼因数5.10 Norm函数欧⼏⾥得L2-范数5.11 PopnStdDev函数总体标准差5.12 PopnVariance函数总体⽅差5.13 StdDev函数样本标准偏差5.14 SumInt函数求Integer数和5.15 SumOfSquares函数求Double平⽅和5.16 SumsAndSquares过程返回Double总和、平⽅和5.17 Sum函数求Double数的和5.18 TotalVariance函数⽅差总合5.19 Variance函数采样⽅差(样品⽅差)5.20 TrimInt(N,Min,Max:Integer):Integer 输出限制在Min..Max之间5.21 InBound(N,Min,Max:Integer):Boolean 输出是否在0..255之间第6章、⾦融函数6.1 InterestPayment函数利息收⼊(IPAYMT)6.2 FutureValue函数未来值(终值(FVAL))6.3 Payment函数6.4 PeriodPayment函数⽀付周期6.5 NetPresentValue函数现在净价值,纯现值(NPV),需要现⾦流数组6.6 InternalRateOfReturn函数内部盈利率(利润率) (IRR)需要现⾦流数组6.7 DoubleDecliningBalance函数6.8 SYDDepreciation函数折旧{Sum-of-Years-Digitsdepreciation(SYD)} 6.9 SLNDepreciation函数直线折旧{StraightLinedepreciation(SLN)} 6.10 PresentValue函数现值6.11 InterestRate 利率(IRATE)6.12 NumberOfPeriods 周期数{NumberofPeriods(NPER)}第7章、随机数函数7.1 RandG函数产⽣⼀个随机数,随机数符合正态分布Mean数附近,⽤于模拟数据抽取样品误差7.2 Random函数由“种⼦”初始化的随机数出发,开始产⽣随机数序列7.3 RandomFrom函数随机返回字符串数组AValues中的⼀个元素7.4 Randomize过程⽤当前机器时间作为随机数“种⼦”初始化随机数发⽣器7.5 RandomRange函数返回指定整数范围内的随机整数7.6 RandSeed函数随机数发⽣的“种⼦”第8章、单位换算函数8.1 CelsiusToFahrenheit函数8.2 CompatibleConversionType函数8.3 CompatibleConversionTypes函数8.4 Convert函数数据类型转换8.5 ConvertFrom函数数据类型转换8.6 ConvertTo函数数据类型转换8.7 ConvFamilyToDescription函数8.8 ConvTypeToDescription函数8.9 ConvTypeToFamily函数8.10 ConvUnitAdd函数8.11 ConvUnitCompareValue函数8.12 ConvUnitDec函数8.13 ConvUnitDiff函数8.14 ConvUnitInc函数8.15 ConvUnitSameValue函数8.16 ConvUnitToStr函数8.17 ConvUnitWithinNext函数8.18 ConvUnitWithinPrevious函数8.19 CycleToDeg函数圆周转度数8.20 CycleToRad函数圆周转弧度8.21 CycleToGrad函数圆周转梯度8.22 DateTimeToJulianDate函数8.23 DateTimeToModifiedJulianDate函数8.24 DateTimeToUnix函数8.25 DegToCycle函数度数转圆周8.26 DegToGrad函数度数转梯度8.27 DegToRad函数度数转弧度8.28 DescriptionToConvFamily函数8.29 DescriptionToConvType函数8.30 FahrenheitToCelsius函数8.31 GetConvFamilies过程8.32 GetConvTypes过程8.33 GradToCycle函数梯度转圆周8.34 GradToDeg函数梯度转度数8.35 GradToRad函数梯度转弧数8.36 JulianDateToDateTime函数8.37 RadToCycle函数弧度转圆周8.38 RadToDeg函数弧度转度数8.39 RadToGrad函数弧度转梯数8.40RaiseConversionError过程8.41 RegisterConversionFamily函数8.42 RegisterConversionType函数8.43 StrToConvUnit函数8.44 TryConvTypeToFamily函数8.45 TryJulianDateToDateTime函数8.46 TryModifiedJulianDateToDateTime函数8.47 TryStrToConvUnit函数8.48 UnixToDateTime函数8.49 UnregisterConversionFamily过程8.50 UnregisterConversionType过程第9章、⽇期函数9.1 CheckSqlTimeStamp过程9.2 CompareDateTime函数⽐较两个⽇期时间9.3 CompareDate函数⽐较两个⽇期9.4 CompareTime函数⽐较两个时间9.5 CurrentYear函数返回当前年份9.6 DateOf函数返回当前的⽇期的时间部分9.7 DateTimeToFileDate函数将DELPHI的⽇期格式转换为DOS的⽇期格式9.8 DateTimeToSQLTimeStamp函数返回当前的⽇期9.9 DateTimeToString过程将⽇期时间格式转换为字符串9.10 DateTimeToStr函数将⽇期时间格式转换为字符串9.11 DateTimeToSystemTime过程⽇期时间类型转换成系统时间类型9.12 DateTimeToTimeStamp函数返回当前的⽇期9.13 DateToStr函数将⽇期格式转换为字符串9.14 Date函数返回当前的⽇期9.15 DayOfTheMonth函数⼀⽉的第⼏天9.16 DayOfTheWeek函数⼀周的第⼏天9.17 DayOfTheYear函数⼀年的第⼏天9.18 DayOfWeek函数返回星期的数值9.19 DayOf函数返回⽇为⼀年的第⼏天9.20 DaysBetween函数两个⽇期的差距天数9.21 DaysInAMonth函数该⽉份的总天数9.22 DaysInAYear函数得到该年份的总天数9.23 DaysInMonth函数该⽉份的总天数9.24 DaysInYear函数得到该年份的总天数9.25 DaySpan函数能得到在天数上的差距9.26 DecodeDateDay过程递减变量值9.27 DecodeDateFully函数递减变量值9.28 DecodeDateMonthWeek过程递减变量值9.29 DecodeDateTime过程递减变量值9.30 DecodeDateWeek过程递减变量值9.31 DecodeDate过程将⽇期格式分解为年⽉⽇9.32 DecodeDayOfWeekInMonth过程递减变量值9.33 DecodeTime过程将时间格式分解为时、分、秒、毫秒9.34 EncodeDateDay函数将年⽉⽇合成为⽇期格式9.35 EncodeDateMonthWeek函数将年⽉⽇合成为⽇期格式9.36 EncodeDateTime函数将年⽉⽇合成为⽇期格式9.37 EncodeDateWeek函数将年⽉⽇合成为⽇期格式9.38 EncodeDate函数将年⽉⽇合成为⽇期格式9.39 EncodeDayOfWeekInMonth函数9.40 EncodeTime函数将时、分、秒、毫秒合成为时间格式9.41 EndOfADay函数每⽇的结束的时间9.42 EndOfAMonth函数每⽉的结束的时间9.43 EndOfAWeek函数每周的结束的时间9.44 EndOfAYear函数每年的结束的时间9.45 EndOfTheDay函数每⽇的结束的时间9.46 EndOfTheMonth函数每⽉的结束的时间9.47 EndOfTheWeek函数每周的结束的时间9.48 EndOfTheYear函数每年的结束的时间9.49 FormatDateTime函数⽤指定的格式来格式化⽇期和时间9.50 GetDay(Date:TDate):Integer 取⽇期天数分量9.51 GetHour(Time:TTime):Integer 取时间⼩时分量9.52 GetMinute(Time:TTime):Integer 取时间分钟分量9.53 GetMonth(Date:TDate):Integer 取⽇期⽉份分量9.54 GetMSecond(Time:TTime):Integer 取时间毫秒分量9.55 GetSecond(Time:TTime):Integer 取时间秒分量9.56 GetTime函数返回当前的时间9.57 GetYear(Date:TDate):Integer 取⽇期年份分量9.58 HourOfTheDay函数9.59 HourOfTheMonth函数9.60 HourOfTheWeek函数9.61 HourOfTheYear函数9.62 HourOf函数返回⼩时为⼀年的第⼏⼩时9.63 HoursBetween函数得到两个⽇期在⼩时上差距数9.64 HourSpan函数得到这两个时间在⼩时上的差数9.65 IncAMonth函数N个⽉后的⽇期9.66 IncDay函数N天后的⽇期9.67 IncHour函数N⼩时后的⽇期时间9.68 IncMilliSecond函数N个⽉后的⽇期9.69 IncMinute函数N分钟后的⽇期时间9.70 IncMonth函数N个⽉后的⽇期9.71 IncSecond函数N秒后的⽇期时间9.72 IncWeek函数N周后的⽇期9.73 IncYear函数N年后的⽇期9.74 IsInLeapYear函数9.75 IsLeapYear函数判断指定的年份是否是闰年9.76 IsPM函数判断指定时间是⽩天还是⿊夜9.77 IsSameDay函数判断是不是同⼀天9.78 IsToday函数判断是不是今天9.79 IsValidDateDay函数判断时间是否合法9.80 IsValidDateMonthWeek函数判断时间是否合法9.81 IsValidDateTime函数判断时间是否合法9.82 IsValidDateWeek函数判断时间是否合法9.83 IsValidDate函数判断时间是否合法9.84 IsValidTime函数判断时间是否合法9.85 MilliSecondOfTheDay函数9.86 MilliSecondOfTheHour函数9.87 MilliSecondOfTheMinute函数9.88 MilliSecondOfTheMonth函数9.89 MilliSecondOfTheSecond函数9.90 MilliSecondOfTheWeek函数9.91 MilliSecondOfTheYear函数9.92 MilliSecondOf函数9.93 MilliSecondsBetween函数9.94 MilliSecondSpan函数9.95 MinuteOfTheDay函数最⼩值9.96 MinuteOfTheHour函数最⼩值9.97 MinuteOfTheMonth函数最⼩值9.98 MinuteOfTheWeek函数最⼩值9.99 MinuteOfTheYear函数最⼩值9.100 MinuteOf函数最⼩值9.101 MinutesBetween函数得到两个⽇期在秒上差距数9.102 MinuteSpan函数得到两个⽇期在秒上差距数9.103 MonthOfTheYear函数得到该年份的该⽉份数9.104 MonthOf函数得到该年份的该⽉份数9.105 MonthsBetween函数得到两个⽇期在⽉份上差距数9.106 MonthSpan函数得到两个时间在⽉上的差数9.107 Now函数返回当前的⽇期和时间9.108 NthDayOfWeek函数9.109 RecodeDateTime函数修改⽇期时间9.110 RecodeDate函数修改⽇期9.111 RecodeDay函数修改⽇数9.112 RecodeHour函数修改⼩时数9.113 RecodeMilliSecond函数修改毫秒数9.114 RecodeMinute函数修改秒数9.115 RecodeMonth函数修改⽉份9.116 RecodeSecond函数修改分钟数9.117 RecodeTime函数修改时间9.118 RecodeYear函数修改年度9.119 ReplaceDate过程使⽤新⽇期替换原⽇期部分,但不改变时间部9.120 ReplaceTime过程使⽤新时间替换原时间部分,但不改变⽇期部9.121 SameDateTime函数返回两个⽇期时间是否相等9.122 SameDate函数返回两个⽇期是否相等9.123 SameTime函数返回两个时间是否相等9.124 SecondOfTheDay函数得到该⽇期的分钟数字9.125 SecondOfTheHour函数9.126 SecondOfTheMinute函数9.127 SecondOfTheMonth函数9.128 SecondOfTheWeek函数9.129 SecondOfTheYear函数9.130 SecondOf函数得到该⽇期的分钟数字9.131 SecondsBetween函数得到这两个时间在分钟上的差数9.132 SecondSpan函数得到这两个时间在分钟上的差数9.133 SQLDayOfWeek函数9.134 SQLTimeStampToDateTime函数9.135 SQLTimeStampToStr函数9.136 StartOfADay函数每⽇的开始的时间9.137 StartOfAMonth函数每⽉的开始的时间9.138 StartOfAWeek函数每周的开始的时间9.139 StartOfAYear函数每年的开始的时间9.140 StartOfTheDay函数每⽇的开始的时间9.141 StartOfTheMonth函数每⽉的开始的时间9.142 StartOfTheWeek函数每周的开始的时间9.143 StartOfTheYear函数每年的开始的时间9.144 StrToDateDef函数将数值转换为字符串9.145 StrToDateTimeDef函数将数值转换为字符串9.146 StrToDateTime函数将字符串转换为⽇期/时间格式9.147 StrToDate函数将字符串转换为⽇期格式9.148 StrToSQLTimeStamp函数将数值转换为字符串9.149 StrToTimeDef函数将数值转换为字符串9.150 StrToTime函数将字符串转换为时间格式9.151 SystemTimeToDateTime函数系统⽇期时间类型转换成PASICL⽇期时间类9.152 TimeOf函数返回当前的时间9.153 TimeStampToDateTime函数返回当前的时间9.154 TimeStampToMSecs函数返回当前的时间9.155 TimeToStr函数将时间格式转换为字符串9.156 Time函数返回当前的时间9.157 Today函数今天:得到当前⽇期9.158 Tomorrow函数明天:得到当前⽇期的后⼀天的⽇期9.159 TryEncodeDateDay函数将年⽉⽇合成为⽇期格式是否成功9.160 TryEncodeDateMonthWeek函数将年⽉⽇合成为⽇期格式是否成功9.161 TryEncodeDateTime函数将年⽉⽇合成为⽇期格式是否成功9.162 TryEncodeDateWeek函数将年⽉⽇合成为⽇期格式是否成功9.163 TryEncodeDate函数将年⽉⽇合成为⽇期格式是否成功9.164 TryEncodeDayOfWeekInMonth函数将年⽉⽇合成为⽇期格式是否成功9.165 TryEncodeTime函数将年⽉⽇合成为⽇期格式是否成功9.166 TryRecodeDateTime函数将年⽉⽇合成为⽇期格式是否成功9.167 TryStrToDateTime函数将年⽉⽇合成为⽇期格式是否成功9.168 TryStrToDate函数将年⽉⽇合成为⽇期格式是否成功9.169 TryStrToSQLTimeStamp函数将年⽉⽇合成为⽇期格式是否成功9.170 TryStrToTime函数将年⽉⽇合成为⽇期格式是否成功9.171 WeekOfTheMonth函数得到该星期为该⽉的第⼏个星期9.172 WeekOfTheYear函数得到该星期为⼀年的第⼏个星期9.173 WeekOf函数得到该星期为⼀年的第⼏个星期9.174 WeeksBetween函数得到这两个时间在星期上的差数9.175 WeeksInAYear函数得到在该年份中共包含多少个星期9.176 WeeksInYear函数得到在该年份中共包含多少个星期9.177 WeekSpan函数得到这两个时间在星期上的差数9.178 WithinPastDays函数判断两个时间差是否在⼀个指定范围内9.179 WithinPastHours函数判断两个时间差是否在⼀个指定范围内9.180 WithinPastMilliSeconds函数判断两个时间差是否在⼀个指定范围内9.181 WithinPastMinutes函数判断两个时间差是否在⼀个指定范围内9.182 WithinPastMonths函数判断两个时间差是否在⼀个指定范围内9.183 WithinPastSeconds函数判断两个时间差是否在⼀个指定范围内9.184 WithinPastWeeks函数判断两个时间差是否在⼀个指定范围内9.185 WithinPastYears函数判断两个时间差是否在⼀个指定范围内9.186 YearOf函数得到该⽇期的年份数字9.187 YearsBetween函数得到两个⽇期在年份上差距数9.188 YearSpan函数得到两个时间在年上的差数9.189 Yesterday函数昨天:得到当前⽇期的前⼀天的⽇期第10章、类型转换函数10.1 AnsiString 短字符串转为长字符串10.2 BinToHex过程将⼆进制数转换为⼗六进制数10.3 BoolToStr函数将布尔型逻辑值转换为字符串10.4 Bounds函数边框10.5 CompToCurrency函数将实数Comp型转换为货币Currency型数据10.6 CompToDouble函数将实数Comp型转换为双精度实数Double型数据10.24 CurrToStrF函数将货币型数转换为字符串10.23 CurrToStr函数将货币型数转换为字符串10.25 DoubleToComp过程将双精度实数Double型转换为实数Comp型数据10.8 HexToBin函数将⼗六进制数转换为⼆进制数10.7 OffsetRect函数通过应⽤⼀个指定的偏移,从⽽让矩形移动起来10.9 Pchar(S)函数长字符串变量S转为指针类型10.10 Point函数画点10.11 Rect函数画矩形10.12 ShortString 长字符串转为短字符串10.13 SmallPoint函数最⼩指针10.15 StrToBoolDef函数返回字符串S转换成逻辑值或默认值10.14 StrToBool函数返回字符串S转换成逻辑值10.19 StrToInt64Def函数返回字符串S转换成六⼗四位整数或默认值10.18 StrToInt64函数返回字符串S转换成六⼗四位整数10.17 StrToIntDef函数将字符串转换为整型或默认值10.16 StrToInt函数将字符串转换为整型10.20 TryStrToBool函数返回字符串S转换成逻辑值Value是否成功10.22 TryStrToInt64函数返回字串S转换成六⼗四位整数值是否成功10.21 TryStrToInt函数返回字符串S转换成整数Value是否成功10.26 FormatCurr函数格式化货币型数据10.27 IntToHex函数将整型数转换为⼗六进制数10.28 IntToStr函数将整型数转换为字符串10.29 VarArrayOf(S1,S2...Sn) 变量转数组10.30 VarType(vS) 返回变体类型的类型代码第11章、异常处理函数11.1 ExceptAddr 返回引起当前意外的地址11.2 ExceptObject函数返回当前意外的错误索引代码信息11.3 ExceptionErrorMessage函数返回当前意外的信息11.4 OutOfMemoryError 引起OutOfMemory意外11.5 RaiseLastOSError过程引起操作系统最后出错11.6 ShowException过程显⽰意外消息与地址11.7 SysErrorMessage函数返回系统意外的信息11.8 RaiseConversionError过程引起类型转换错误11.9 AcquireExceptionObject函数获得当前意外的错误索引代码信息11.10 DatabaseError过程返回数据库意外的错误索引代码信息11.11 DatabaseErrorFmt过程返回数据库意外的错误索引代码信息第12章、⽂件处理函数12.1 AddDirSuffix ⽬录尾加’\’修正12.2 Append过程以附加的⽅式打开已有的⽂件12.3 AppPath 应⽤程序路径12.4 AssignFile过程给⽂件变量赋⼀外部⽂件名12.5 AssignPrn函数将打印机赋给⼀个变量12.6 BlockRead过程读⼀个或多个记录到变量中12.7 BlockWrite过程从变量中写⼀个或多个记录12.8 ChangeFileExt函数改变⽂件的后缀12.9 ChDir过程改变当前⽬录12.10 CloseFile过程关闭打开的⽂件12.11 CreateBakFile 创建备份⽂件12.12 CreateDir函数建⽴⼀⼦⽬录12.13 DeleteFile函数删除⽂件12.14 Deltree 删除整个⽬录12.15 DirectoryExists函数检查⽬录是否存在12.16 DiskFree函数返回剩余磁盘空间的⼤⼩12.17 DiskSize函数返回指定磁盘的容量12.18 Eof函数对有类型或⽆类型⽂件测试是否到⽂件尾12.19 Eoln函数返回⽂本⽂件的⾏结束状态12.20 Erase过程删除外部⽂件12.21 ExcludeTrailingBackslash函数12.22 ExcludeTrailingPathDelimiter12.23 ExpandFileName函数返回不包含绝对路径的⽂件名字符串12.24 ExpandUNCFileName函数从⽹络上返回不包含绝对路径的⽂件名字符串12.25 ExtractFileDir函数返回驱动器和路径12.26 ExtractFileDrive函数返回驱动器12.27 ExtractFileExt函数返回⽂件的后缀12.28 ExtractFileName函数返回⽂件名12.29 ExtractFilePath函数返回指定⽂件的路径12.30 ExtractRelativePath函数返回指定远程⽂件的路径12.31 ExtractShortPathName函数返回指定⽂件短的路径12.32 FileAge函数返回⽂件已存在的时间12.33 FileClose过程关闭指定的⽂件12.34 FileCreate函数⽤指定的⽂件名建⽴新⽂件12.35 FileDateToDateTime函数将DOS的⽇期格式转换为Delphi的⽇期格式12.36 FileExists函数检查⽂件是否存在12.37 FileGetAttr函数获取⽂件属性12.38 FileGetDate函数返回⽂件的编修⽇期12.39 FileIsReadOnly函数返回⽂件的是否是只读12.40 FileOpen函数⽤指定的存取模式打开指定的⽂件12.41 FilePos函数返回⽂件的当前指针位置12.42 FileProperties 打开⽂件属性窗⼝12.43 FileRead函数从指定的⽂件读取12.44 FileSearch函数在⽬录中搜索指定的⽂件12.45 FileSeek函数改变⽂件指针的当前位置12.46 FileSetAttr函数设置⽂件属性12.47 FileSetDate函数设置⽂件的DOS⽇期时间标记12.48 FileSetReadOnly函数设置⽂件为只读属性12.49 FileSize函数返回当前⽂件的⼤⼩12.50 FileTimeToLocalSystemTime ⽂件时间转本地时间12.51 FileWrite函数对指定的⽂件做写操作12.52 FindClose过程终⽌FindFirst/FindNext序列12.53 FindFile 查找指定⽬录下⽂件12.54 FindFirst函数搜索⽬录下的第⼀个⽂件,并创建内存空间使⽤12.55 FindNext函数返回与⽂件名及属性匹配的下⼀个⽂件12.56 Flush函数将缓冲区的内容刷新到输出的⽂本⽂件中12.57 ForceDirectories函数建⽴⼀⼦⽬录,若⽗⽬录不存在⾃动创建⽗⽬录12.58 GetCurrentDir函数获取当前⽬录12.59 GetDirFiles 取⽂件夹⽂件数12.60 GetDir过程返回指定驱动器的当前⽬录12.61 GetFileIcon 取得与⽂件相关的图标,成功返回True12.62 GetRelativePath 取两个⽬录的相对路径,注意串尾不能是’\’字符12.63 GetWindowsDir 取Windows系统⽬录12.64 GetWinTempDir 取临时⽂件⽬录12.65 IncludeTrailingBackslash函数12.66 IncludeTrailingPathDelimiter12.67 IOResult函数返回最新的I/O操作完成状态12.68 IsFileInUse 判断⽂件是否正在使⽤12.69 IsPathDelimiter函数12.70 LocalSystemTimeToFileTime 本地时间转⽂件时间12.71 MakePath ⽬录尾加’\’修正12.72 MatchesMask函数12.73 MinimizeName函数12.74 MkDir过程建⽴⼀⼦⽬录12.75 MoveFile 移动⽂件、⽬录,参数为源、⽬标名12.76 OpenDialog 打开⽂件对话框12.77 OpenWith ⽂件打开⽅式12.78 procedure 查找指定⽬录下⽂件的回调函数12.79 ProcessPath过程12.80 ReadLn过程⽂本⽂件,读⼀⾏到⼀个变量中12.81 Read过程对有格式的⽂件,读⼀⽂件组件到变量中; ⽂本⽂件,读⼀个或多个值到⼀个或多12.82 RemoveDir函数删除⼀个不包含⽂件的⽬录12.83 RenameFile函数对⽂件重命名12.84 Rename过程重命名外部⽂件12.85 Reset过程打开已有的⽂件12.86 Rewrite过程建⽴并打开⼀新的⽂件12.87 RmDir过程删除空的⼦⽬录12.88 RunFile 运⾏⼀个⽂件12.89 SeekEof函数返回⽂件的⽂件结束状态12.90 SeekEoln函数返回⽂件的⾏结束状态12.91 Seek过程将⽂件的当前指针移动到指定的组件上12.92 SetCurrentDir函数设置当前⽬录12.93 SetLineBreakStyle过程设置⾏中断的类型12.94 SetTextBuf过程给⽂本⽂件指定I/O缓冲区12.95 Truncate过程截去当前⽂件位置后的内容12.96 WinExecAndWait32 运⾏⼀个⽂件并等待其结束12.97 Write(for text files)过程向⽂本⽂件,写⼀个或多个值12.98 Write(for typed files)过程向格式⽂件写⼊信息12.99 WriteLn过程向⽂本⽂件,写⼀⾏第13章、图形计算与处理函数13.1 CharsetToIdent函数13.2 ColorToIdent函数13.3 ColorToRGB函数13.4 ColorToString函数13.5 CreateGrayMappedBmp函数13.6 CreateMappedBmp函数13.7 DrawButtonFace函数13.8 Frame3D过程13.9 GetCharsetValues过程13.10 GetColorValues过程13.11 GetDefFontCharSet函数13.12 GraphicExtension函数13.13 GraphicFilter函数13.14 MoveWindowOrg过程13.15 StringToColor函数13.16 CenterPoint函数13.17 IntersectRect函数13.18 InvalidPoint函数13.19 IsRectEmpty函数13.20 PointsEqual函数13.21 PtInRect函数13.22 UnionRect函数13.23 BitToAry(Image) 图⽚转换字符串赋值到F变量第14章格式化函数14.1 Format函数格式化⼀系列的参数,Format(‘XND=‘+’’’%S’’’,[IntToStr(y)])14.2 FmtStr函数格式化⼀系列的参数,其结果以参数Result返回14.3 StrFmt函数格式化⼀系列的参数14.4 StrLFmt函数格式化⼀系列的参数,并将结果指向⽬标缓冲区的指针14.5 FormatBuf函数格式化⼀系列的参数14.6 WideFormat函数14.7 WideFmtStr函数14.8 WideFormatBuf函数14.9 FormatFloat函数指定浮点数格式14.10 FormatCurr函数指定货币数格式14.11 FormatDateTime函数⽤指定的格式来格式化⽇期和时间,如:FormatDateTime(‘yyyy’’年’’mm’’⽉’’dd’’⽇’,ksrq)或FormatdateTime(‘dddddd’,now)FormatDateTime(‘hh’’时’’mm’’分’’ss’’秒’,now)14.12 FormatPath(Path,Width) 缩短显⽰不下的长路径名14.13 LongTimeFormat全局变量长⽇期格式14.14 ShortDateFormat全局变量短⽇期格式第15章、对话框函数15.1 CreateMessageDialog函数15.2 InputBox函数InputBox(‘标题’,’提⽰’,’默认值’)15.3 InputQuery函数15.4 IsAbortResult函数15.5 IsAnAllResult函数15.6 IsNegativeResult函数15.7 IsPositiveResult函数15.8 LoginDialog函数15.9 LoginDialogEx函数15.10 MessageBox函数MessageBox(窗⼝名/Handle,’提⽰’,’标题’,’信息类别’) 15.11 MessageDlg函数MessageDlg(‘提⽰’,类型,按钮类别,帮助句柄0)15.12 MessageDlgPos函数15.13 MessageDlgPosHelp函数15.14 PromptForFileName函数15.15 RegisterFilePreviewer过程15.16 RemoteLoginDialog函数15.17 SelectDirectory函数15.18 ShowMessage过程ShowMessage(‘提⽰’) 15.19 ShowMessageFmt过程15.20 ShowMessagePos过程15.21 StripAllFromResult函数15.22 UnregisterFilePreviewer过15.23 ForceCurrentDirectory过程15.24 InfoDlg 显⽰提⽰窗⼝15.25 InfoOk 显⽰提⽰确认窗⼝15.26 ErrorDlg 显⽰错误窗⼝15.27 WarningDlg 显⽰警告窗⼝15.28 QueryDlg 显⽰查询是否窗⼝第16章、打印机函数16.1 Printer函数打印机16.2 SetPrinter函数设置打印机第17章、COM实⽤函数17.1 CreateClassID函数17.2 CreateOleObject函数17.3 EnumDispatchProperties过程17.4 GetDispatchPropValue函数17.5 SetDispatchPropValue过程17.6 OleCheck过程17.7 ProgIDToClassID函数17.8 ClassIDToProgID函数17.9 ComClassManager函数17.10 CreateComObject函数17.11 CreateOleObject函数17.12 CreateRegKey过程17.13 CreateRemoteComObject函数17.14 CreateSharedPropertyGroup函数17.15 CreateSharedPropertyGroupManager函数17.16 DeleteRegKey过程17.17 DLLCanUnloadNow函数17.18 DLLGetClassObject函数17.19 DllRegisterServer函数17.20 DllUnregisterServer函数17.21 EnumDispatchproperties过程17.22 FontToOleFont函数17.23 GetActiveOleObject函数17.24 GetDispatchpropValue函数17.25 GetOleFont过程17.26 GetOlePicture过程17.27 GetOleStrings过程17.28 GetRegStringValue函数17.29 InterfaceConnect过程17.30 InterfaceDisconnect过程17.31 OleCheck过程17.32 OleError过程17.33 OleFontToFont过程17.34 OleStrToString函数17.35 OleStrToStrVar过程17.36 ParkingWindow函数17.37 ProglDToClassID函数17.38 RegisterComServer过程17.39 SafeRef函数17.40 SetDispatchPropValue过程17.41 SetOleFont过程17.42 SetOlePicture过程17.43 SetOleStrings过程17.44 StringToOleStr函数17.45 Supports函数第18章、窗⼝控制实⽤程序18.1 CheckToolMenuDropdown过程18.2 FindControl函数18.3 GetComCtlVersion函数18.4 GetParentForm函数18.5 SendAppMessage函数第19章、菜单函数19.1 AnsiSameCaption函数19.2 GetHotKey函数19.3 NewItem函数19.4 NewLine函数19.5 NewMenu函数19.6 NewPopupMenu函数19.7 NewSubMenu函数19.8 ShortCut函数19.9 ShortCutToKey过程19.1 ShortCutToText函数19.11 StripHotKey函数19.12 TextToShortCut函数19.13 WideSameCaption函数19.14 ValidmenuHotKeys函数第20章、向后兼容例程20.1 AddExitProc过程将⼀过程添加到运⾏时库的结束过程表中20.2 AppendStr过程在字符串P后追加字符串S20.3 AssignStr过程将字符串S更新给字符串指针P20.4 Close过程关闭⽂件20.5 DisposeStr过程释放字符串在堆栈中的内存空间20.6 ExitCode变量离开代码块20.7 LoadStr函数从应⽤程序的可执⾏⽂件中装载字符资源20.8 NewStr函数在堆栈上分配新的字符串20.9 StrAlloc函数给以NULL结束的字符串分配最⼤长度-1的缓冲区20.10 StrBufSize函数返回存储在由StrAlloc分配的字符缓冲区的最⼤字符数20.11 StrDispose过程释放堆栈上的字符串20.12 StrNew函数在堆栈上分配⼀个字符串20.13 StrPas函数将以NULL结束的字符串转换为PASCAL类的字符串20.14 Swap函数交换参数的⾼低地址位第21章、⾏为⽀持函数与过程21.1 CreateAction函数创建⼀个动作21.2 EnumRegisteredActions过程注册⼀个动作21.3 RegisterActions过程注册⼀个动作21.4 UnRegisterActions过程取消注册的⼀个动作第22章、Windows剪贴板函数22.1 Clipboard函数剪贴板函数22.2 SetClipboard函数设置剪贴板函数第23章、流程控制23.1 Abort 引起放弃的意外处理23.2 Break 终⽌for、while、repeat循环语句23.3 Continue 继续for、while、repeat的下⼀个循环23.4 Exit ⽴即从当前的语句块中退出23.5 RunError 停⽌程序的执⾏23.6 Halt 停⽌程序的执⾏并返回到操作系统23.7 Application.Terminate 停⽌程序的执⾏并返回到操作系统第24章、指针相关函数24.1 Addr(X):Pointer 返回指定对象的地址24.2 Assigned(var P):Boolean 测试函数或过程变量是否为空24.3 Cseg:Word 返回CS程序段缓存器的内容24.4 Dseg:Word 返回DS程序段缓存器的内容24.5 FreeAndNil24.6 Ofs(X):Word 返回参数的偏移地址24.7 Ptr(Seg,Ofs:Word):Pointer 将所指定的节段及偏移地址组合到⼀个指针24.8 Seg(X):Word 返回参数的节段地址。

Delphi常用技巧自编函数库

Delphi常用技巧自编函数库

常用技巧自编函数库(DELPHI){*******************************************************项目:离线式制卡系统模块:自定义函数模块描述:版本:1.0日期:作者:刘进雄邮箱:apollo@ & ljx@更新:*******************************************************}unit uCustomModule;interfaceusesWindows, Messages, Classes, Graphics, Controls, Forms, SysUtils,ExtCtrls, Dialogs, Buttons, Registry, FileCtrl, ShlObj, ShellAPI,jpeg, ActiveX, ComObj, MMSystem, MPlayer, StdCtrls, LZExpand;//_____________________________________________________________________// // //// Moudle index ////_____________________________________________________________________// {1. CustomCursor ................. 自定义光标2. ReadRegKey ................... 读注册表键值3. WriteRegKey .................. 写注册表键值4. GetExePath ................... 取应用程序路径5. GetParameter ................. 取配置文件参数6. RebootExpires ................ 让重新启动失效7. RebootRestore ................ 恢复重新启动功能8. CloseExpires ................. 使窗口关闭功能失效9. CloseRestore ................. 恢复窗口关闭功能10. HideDesktop ................. 隐藏桌面图标11. ShowDesktop ................. 显示桌面图标12. ChangeWallPaper ............. 更改墙纸13. myGetWindowsDirectory ....... 取Windows目录14. myGetSystemDirectory ........ 取系统目录15. myGetTempPath ............... 取临时路径16. myGetLogicalDrives .......... 取逻辑驱动器17. myGetUserName ............... 取用户名18. myGetComputerName ........... 取计算机名19. mySelectDirectory ........... 选择目录20. myClearDocument ............. 清除开始菜单我的文档内容21. SystemAbout ................. 调用系统关于对话框22. SelectDir ................... 选择目录23. HideFormOnTask .............. 在任务栏上隐藏窗口24. ConvertBMPtoJPG ............. 转化BMP格式为JPG25. ConvertJPGtoBMP ............. 转化JPG格式为BMP26. Replacing ................... 替换某一字符串27. SmallTOBig .................. 转化数字为大写中文(1 - 壹)28. CreateShortCut .............. 建立快捷方式29. myAddDocument ............... 增加文件到最近打开过的文档30. GetFileIcon ................. 取得文件图标31. GetCDROMNumber .............. 取CDROM序列号32. SetCDAutoRun ................ 设置光驱是否自动运行33. OpenCDROM ................... 打开光驱34. CloseCDROM .................. 关闭光驱35. GetDiskSizeAvail ............ 取磁盘所有字节数和剩余字节数36. GetDiskSize ................. 取磁盘所有字节数和剩余字节数37. SystemBarCall ............... 系统控制面板功能调用38. GetUserNameAPI .............. 取用户名(API方式)39. GetWindowsProductID ......... 取WINDOWS产品ID40. HideTaskbar ................. 隐藏任务栏41. ShowTaskbar ................. 显示任务栏42. MakeTree .................... 获取目录树43. CreateDsn ................... 建立DSN44. CnToPY ...................... 转化中文为拼音首字母45. AddIcoToIE .................. 增加应用程序图标到IE46. SetVolume ................... 设置磁盘卷标47. FormatFloppy ................ 格式化软盘48. IsAudioCD ................... 判断光驱中是否为CD盘49. PlayAudioCD ................. 播放CD盘50. DiskInDrive ................. 判断驱动器是否就绪51. CheckDriverType ............. 检查驱动器类型52. IsFileInUse ................. 判断文件是否在使用53. CopyDir ..................... 拷贝目录包含子目录54. DeleteDir (No use) .......... 删除目录包含子目录55. CreateTempFile .............. 建立临时文件56. SearchFile .................. 寻找文件57. GetProgramAssociation ....... 取得应用程序扩展58. myGetFileTime ............... 取文件建立时间59. SetFileDateTime ............. 设置文件时间60. GetFileLastAccessTime ....... 取文件最后访问时间61. CreateDirectory ............. 建立目录62. ChangeDirectory ............. 改变目录63. GetDirectory ................ 得到目录64. SetCurrentDirectory ......... 设置当前目录65. RenameDirOrFile ............. 更改目录或文件名66. CreateMultiDir .............. 建立多级目录67. DirExist .................... 判断目录是否存在68. ChangeFileExtension ......... 更改文件扩展名69. GetFileExtension ............ 取文件扩展名70. FileCopy1 ................... 文件拷贝71. FileCopy2 ................... 文件拷贝72. FileCopy3 ................... 文件拷贝73. SetFileAttribAPI ............ 设置文件属性(API方式)74. SetFileAttrib ............... 设置文件属性75. GetFilePath1 ................ 取得文件路径(有'\'结尾)76. GetFilePath2 ................ 取得文件路径(没有'\'结尾)77. CopyDelRenMovFile ........... 拷贝、删除、改名或移动文件78. GetPortUsed ................. 得到已被使用串口列表79. SetMediaAudioOff ............ 静音播放媒体文件80. SetMediaAudioOn ............. 打开媒体播放文件声音81. WaitExeFinish ............... 等待直到可执行文件执行完成}//_____________________________________________________________________// // //// Declare function and procedure ////_____________________________________________________________________// //-------------------------------////1. Custom application cursors//-------------------------------//{Function:The procedure will use custom cursors replace default cursorsParameter:objControl: Object nameiPosition: The cursors position which want to changeiMode: Object typesFilePath: New cursors file path will be loadingReturn value:NoneExample:CustomCursor(frmMain, 1, 1, 'C:\test1.ico');CustomCursor(imgPhoto, 2, 1, 'C:\test2.ico');CustomCursor(pnlRecord, 3, 1, 'C:\test3.ico');}procedure CustomCursor(const objControl: TObject;const iPosition,iMode: integer;const sFilePath: string);//-------------------------------////2. Read key from register//-------------------------------//{Function:The procedure's function is read register key valueParameter:iMode: Read value typesPath: Key pathsKeyName: Key nameReturn value:The key valueExample:ReadRegKey(1, '\Software\Microsoft\Windows\', 'Text'); ReadRegKey(2, '\Software\Microsoft\Windows\', 'Numeric');}function ReadRegKey(const iMode: integer; const sPath, sKeyName: string): string;//-------------------------------////3. Write key to regisiter//-------------------------------//{Function:Use the function to write the key and value into registry Parameter:iMode: Write value typesPath: Key pathsKeyName: Key namesKeyValue: Key value which will been writtenReturn value:Write result if successExample:WriteRegKey(1, '\Software\Microsoft\Windows\', 'Text', 'It's a test.'); WriteRegKey(2, '\Software\Microsoft\Windows\', 'Numeric', '1');}function WriteRegKey(const iMode: integer; const sPath, sKeyName, sKeyValue: string): Boolean;//-------------------------------////4. Get execute file path//-------------------------------//{Function:Obtain main execute file pathParameter:NullReturn value:Execute file pathExample:GetExePath();}function GetExePath(): string;//-------------------------------////5. Get configure file parameter//-------------------------------//{Function:Get execute file configure parameterParameter:FileName: Configure file nameReturn value:Configure parameter valueExample:GetParameter('C:\Configure.ini');}function GetParameter(const FileName: string): WideString; //-------------------------------////6. Set reboot expires(Alt+Ctrl+Del)//-------------------------------//{Function:Set computer reboot key expiresParameter:NullReturn value:NoneExample:RebootExpires();}procedure RebootExpires();//-------------------------------////7. Set reboot enabled restore(Alt+Ctrl+Del)//-------------------------------//{Function:Restore reboot enabledParameter:NullReturn value:NoneExample:RebootRestore();}procedure RebootRestore();//-------------------------------////8. Set close form expires//-------------------------------//{Function:Set close form key expiresParameter:NullReturn value:NoneExample:CloseExpires();}procedure CloseExpires();//-------------------------------////9. Set close form enabled restore//-------------------------------//{Function:Restore close form enabled Parameter:NullReturn value:NoneExample:CloseRestore();}procedure CloseRestore();//-------------------------------////10. Hide desktop's icons//-------------------------------//{Function:All of icons on desktop will been hidden Parameter:NullReturn value:NoneExample:HideDesktop();}procedure HideDesktop();//-------------------------------////11. Show desktop's items//-------------------------------//{Function:All of desktop's icons will been shown Parameter:NullReturn value:NoneExample:ShowDesktop();}procedure ShowDesktop();//-------------------------------////12. Change desktop wall paper//-------------------------------//{Function:Set desktop wall paper use user refer toParameter:sPath: Use this parameter to load a picture as wall paper Return value:false: Failtrue: SuccessExample:ChangeWallPaper('C:\wallpaper.bmp');}function ChangeWallPaper(const sPath: string): Boolean; //-------------------------------////13. Get windows directory//-------------------------------//{Function:Get windows directoryParameter:NullReturn value:Windows directory like 'C:\WINNT' or 'C:\Windows' etc. Example:myGetWindowsDirectory();}function myGetWindowsDirectory(): string;//-------------------------------////14. Get windows system directory//-------------------------------//{Function:Get windows system directoryParameter:NullReturn value:Windows system directory as 'C:\Winnt\System32' Example:myGetSystemDirectory()}function myGetSystemDirectory(): string;//-------------------------------////15. Get system temperory directory//-------------------------------//{Function:Get system temperory directoryParameter:NullReturn value:Temperory pathExample:myGetTempPath();}function myGetTempPath(): string;//-------------------------------////16. Get logical drives//-------------------------------//{Function:Use the function to get logical drives Parameter:NullReturn value:Drives value like 'ACD'Example:myGetLogicalDrives()}function myGetLogicalDrives(): string; //-------------------------------////17. Get login user name//-------------------------------//{Function:Get login user nameParameter:NullReturn value:User name which to login computer Example:myGetUserName()}function myGetUserName(): string;//-------------------------------////18. Get computer name//-------------------------------//{Function:Get computer nameParameter:NullReturn value:Computer nameExample:myGetComputerName()}function myGetComputerName(): string;//-------------------------------////19. Select directory//-------------------------------//{Function:Select directory where pointer toParameter:sDescription: The text show for usersPath: Start positionReturn value:What directory to been selectedExample:mySelectDirectory('Please select directory:', 'C:\');}function mySelectDirectory(const sDescription, sPath: string): string; //-------------------------------////20. Clear document//-------------------------------//{Function:Clear document that recently accessParameter:NullReturn value:NoneExample:myClearDocument()}procedure myClearDocument();//-------------------------------////21. Call system about dialog//-------------------------------//{Function:Call system about dialogParameter:sTitle: Infomation titlesContent: Infomation contentReturn value:NoneExample:SystemAbout('POS system', 'Use the system for check out');}procedure SystemAbout(const sTitle, sContent: string);//-------------------------------////22. Select directory or file//-------------------------------//{Function:Select directory or fileParameter:iMode: Meant select directory and file or only select directory Return value:Directory name or file nameExample:SelectDir(1, 'Please select file:');SelectDir(2, 'Please select directory:');}function SelectDir(const iMode: integer; const sInfo: string): string; //-------------------------------////23. Hide form on task//-------------------------------//{Function:Hide form on taskParameter:NullReturn value:NoneExample:HideFormOnTask();}//Note: The procedure must been called when the main from create procedure HideFormOnTask();//-------------------------------////24. Convert BMP to JPG//-------------------------------//{Function:Convert BMP to JPGParameter:sFileName: The bmp picture file what want to convert sToFileName: Converted file name and pathReturn value:NoneExample:ConvertBMPtoJPG('c:\a.bmp','d:\b');}procedure ConvertBMPtoJPG(const sFileName, sToFileName: string); //-------------------------------////25. Convert JPG to BMP//-------------------------------//{Function:Convert JPG to BMPParameter:sFileName: The jpg picture file what want to convert sToFileName: Converted file name and pathReturn value:NoneExample:ConvertJPGtoBMP('c:\a.jpg','d:\b');}procedure ConvertJPGtoBMP(const sFileName, sToFileName: string);//-------------------------------////26. Replace string in source//-------------------------------//{Function:Replace string in sourceParameter:S: String will been replacedsource: Source sub-stringtarget: Target sub-stringReturn value:Replaced resultExample:Replacing(sTest, 'LiuJinXiong', 'Apollo');}function Replacing(S, source, target: string): string;//-------------------------------////27. Change numeric to chinese string//-------------------------------//{Function:Change numeric to chinese stringParameter:small: Numeric what to be changediPosition: Reserved longReturn value:Result stringExample:SmallTOBig(12345.78, -2);}function SmallTOBig(const small: real; const iPosition: integer): string;//-------------------------------//{Function:Create a short cut on desktop for programParameter:sExePath: Files path and namesShortCutName: Short cut nameReturn value:NoneExample:CreateShortCut('D:\a.txt', '测试文件');}procedure CreateShortCut(const sPath: string; sShortCutName: WideString); //-------------------------------////29. Add file to document//-------------------------------//{Function:Add file to documentParameter:sPath: File path and nameReturn value:NoneExample:myAddDocument('C:\test.doc');}procedure myAddDocument(const sPath: string);//-------------------------------////30. Get files icon//-------------------------------//{Function:Get files iconParameter:Filename: File path which icon will been gottenSmallIcon: If true will get 16*16 size icon, false will get 32*32 size icon Return value:Icon's handleExample:frmTest.Icon.Handle := GetFileIcon('d:\test.doc', true);image1.Picture.Icon.Handle := GetFileIcon('d:\test.doc', false);}function GetFileIcon(const Filename: string; SmallIcon: Boolean): HICON;//-------------------------------////31.Get CDROM serial numberFunction:Get CDROM serial numberParameter:NullReturn value:CDROM serial numberExample:GetCDROMNumber();}function GetCDROMNumber(): string;//-------------------------------////32. Set CDROM auto run//-------------------------------//{Function:Set CDROM auto runParameter:AAutoRun: if true CDROM will autorun, or not autorun Return value:NoneExample:SetCDAutoRun(true); //AutorunSetCDAutoRun(false); //No autorun}procedure SetCDAutoRun(AAutoRun: Boolean);//-------------------------------////33. Open CDROM//-------------------------------//{Function:Open CDROMParameter:NullReturn value:NoneExample:OpenCDROM();}procedure OpenCDROM();//-------------------------------////34. Close CDROM//-------------------------------//{Function:Close CDROMReturn value:NoneExample:CloseCDROM();}procedure CloseCDROM();//-------------------------------////35. Get disk total bytes and total free//-------------------------------//{Function:Get disk total bytes and total freeParameter:TheDrive: What the disk to be totalTotalBytes: Total bytesTotalFree: Total freeReturn value:TotalBytes: Total bytesTotalFree: Total freeExample:varTotalBytes: double;TotalFree: double;beginGetDiskSizeAvail('c:\', TotalBytes, TotalFree);ShowMessage(FloatToStr(TotalBytes));ShowMessage(FloatToStr(TotalFree));}//Note: Total bytes bigger than 2Gprocedure GetDiskSizeAvail(TheDrive: PChar; var TotalBytes, TotalFree: double); //-------------------------------////36. Close CDROM//-------------------------------//{Function:Close CDROMParameter:NullReturn value:NoneExample:CloseCDROM();}procedure GetDiskSize(const sDriver: string; var TotalBytes, TotalFree: double); //-------------------------------//{Function:Close CDROMParameter:NullReturn value:NoneExample:CloseCDROM();}function SystemBarCall(const iNumber:integer):Boolean; //-------------------------------////38. Get user name//-------------------------------//{Function:Get user nameParameter:NullReturn value:User nameExample:GetUserName();}function GetUserNameAPI(): AnsiString;//-------------------------------////39. Get windows product ID//-------------------------------//{Function:Get windows product IDParameter:NullReturn value:Windows product IDExample:GetWindowsProductID();}function GetWindowsProductID(): string;//-------------------------------////40. Hide task bar//-------------------------------//{Function:Hide task barReturn value:NoneExample:HideTaskbar();}procedure HideTaskbar();//-------------------------------////41. Show task bar//-------------------------------//{Function:Show task barParameter:NullReturn value:NoneExample:ShowTaskbar();}procedure ShowTaskbar();//-------------------------------////42. Make folder tree//-------------------------------//{Function:Make folder tree then add to listParameter:iMode: Control type, 1 meant ListBox, 2 meant MemoobjName: Object nameReturn value:NoneExample:Memo1.Clear;ChDir(Edit1.Text);MakeTree(2, Memo1);-------------------ListXox1.Clear;ChDir(Edit1.Text);MakeTree(1, ListBox1);}procedure MakeTree(const iMode: integer; const objName: TObject); //-------------------------------////43. Create database DSN//-------------------------------//{Parameter:sDsnName: DSN namesDbPath: Database path and namesDescription: About database describeReturn value:True meant success, false meant failExample:CreateDsn('Apollotest', 'C:\apollo.mdb', 'apollo test dsn');}function CreateDsn(const sDsnName, sDbPath, sDescription: string): Boolean; //-------------------------------////44. Change Chinese to PinYin index//-------------------------------//{Function:Change Chinese to PinYin indexParameter:sChinese: A Chinsese stringReturn value:PinYin indexExample:edtLove.Text := CnToPY('我爱刘韵');}function CnToPY(const sChinese: string): string;//-------------------------------////45. Add program ico to IE//-------------------------------//{Function:Add program ico to IEParameter:sExePath: Execute program path and namesShowText: Show text when mouse move over itsIcon: Show iconssOverIcon: Show icons when the mouse move over itReturn value:true: Setup successfalse: Setup failExample:AddIcoToIE('c:\HUBDOG.CHM', '帮助文件', 'c:\1.ico', 'c:\2.ico');}procedure AddIcoToIE(const sExePath, sShowText, sIcon, sOverIcon: string); //-------------------------------////46. Set disk volume//-------------------------------//Set disk volumeParameter:sDriver: Which driver want to change volumesLabel: Volume labelReturn value:true: Successfalse: failExample:SetVolume('C:', 'System');}function SetVolume(const sDriver, sLabel: string): Boolean; //-------------------------------////47. Format floppy//-------------------------------//{Function:Format floppyParameter:NullReturn value:NoneExample:FormatFloppy();}function FormatFloppy(): Boolean;//-------------------------------////48. Judge if Audio CD in CDROM//-------------------------------//{Function:Judge if Audio CD in CDROMParameter:Drive: CDROMReturn value:true: Is Audio CDfalse: Isn't Audio CDExample:IsAudioCD('E');}function IsAudioCD(const Drive: Char): bool;//-------------------------------////49. Play Audio CD//-------------------------------//{Function:Drive: CDROMReturn value:true: Play okayfalse: Play failExample:PlayAudioCD('E');}function PlayAudioCD(const Drive: Char): bool;//-------------------------------////50. Check drive if ready//-------------------------------//{Function:Check drive if readyParameter:Drive: Floppy, Harddisk or CDROMReturn value:true: Okayfalse: No okayExample:DiskInDrive('A');}function DiskInDrive(Drive: Char): Boolean;//-------------------------------////51. Check driver type//-------------------------------//{Function:Check driver typeParameter:sDriver: DiskReturn value:Result about disk typeExample:CheckDriverType('A');}function CheckDriverType(const sDriver: string): string; //-------------------------------////52. Check file in use//-------------------------------//{Function:Check file in useParameter:fName: File namefalse: No in useExample:IsFileInUse('C:\a.doc');}function IsFileInUse(const fName: string): Boolean;//-------------------------------////53. Copy directory include sub-directory//-------------------------------//{Function:Copy directory include sub-directoryParameter:sDirName: Source directory namesToDirName: To directoryReturn value:true: Successfalse: failExample:CopyDir('C:\a', 'D:\b');}function CopyDir(const sDirName, sToDirName: string): Boolean; //-------------------------------////54. Close CDROM//-------------------------------//{Function:Close CDROMParameter:NullReturn value:NoneExample:CloseCDROM();}//function DeleteDir(const sDirName: string): Boolean;//-------------------------------////55. Create temporery file//-------------------------------//{Function:Create temporery fileParameter:sPath: The files pathReturn value:Created position}function CreateTempFile(const sPath: string): string;//-------------------------------////56. Find files//-------------------------------//{Function:Find filesParameter:mainpath: The path what want to findfilename: File namefoundresult: Find resultReturn value:true: Found the files and store the list in foundresultfalse: Not found the fileExample:vara: Tstrings;i: integer;begina := TStringList.Create;trySearchFile('c:\', 'bird.ico', a);edit1.text := inttostr(a.count);for i := 0 to a.Count - 1 dolistbox1.Items.Add(a.Strings[i]);finallya.Free;end;end;}function SearchFile(mainpath: string; filename: string; var foundresult: TStrings): Boolean; //-------------------------------////57. Get program extension//-------------------------------//{Function:Get program exetentionParameter:Ext: Extension name like 'ico','exe','gif' etc.Return value:Extension execute programExample:GetProgramAssociation('html');}function GetProgramAssociation(Ext: string): string;//58. Get file time//-------------------------------//{Function:Get file timeParameter:Tf: File nameReturn value:Date and timeExample:GetFileTime('C:\a.txt');}function myGetFileTime(const Tf: string): string;//-------------------------------////59. Set file date and time//-------------------------------//{Function:Set file date and timeParameter:Tf: File path and namedCreateDate: Create file datetCreateTime: Create file timedModifyDate: Create file datetModifyTime: Create file timeReturn value:NoneExample:SetFileDateTime('c:\a.txt',DateTimePicker1.Date,DateTimePicker2.Time,DateTimePicker3.Date,DateTimePicker4.Time) }function SetFileDateTime(const Tf: string; const dCreateDate, tCreateTime, dModifyDate, tModifyTime: TDateTime): Boolean;//-------------------------------////60. Get file last access time//-------------------------------//{Function:Get file last access timeParameter:FileName: File name and pathReturn value:Last access timeExample:GetFileLastAccessTime('C:\a.txt');}function GetFileLastAccessTime(const FileName: PChar): string;//-------------------------------////61. Create a empty directory//-------------------------------//{Function:Create a empty directoryParameter:sDirName: Directory nameReturn value:NoneExample:CreateDirectory('C:\apollo');}procedure CreateDirectory(const sDirName: string);//-------------------------------////62. Change directory//-------------------------------//{Function:Change directoryParameter:sPath: PathReturn value:NoneExample:ChangeDirectory('C:\apollo');}procedure ChangeDirectory(const sPath: string);//-------------------------------////63. Get a disk current directory//-------------------------------//{Function:Get a disk current directoryParameter:iDrive: Disk code with integer value as 0, 1, 2 meant default, A, B Return value:A var meant current directory in a diskExample:var s: string;GetDirectory(0, s);}procedure GetDirectory(const iDrive: integer; var sPath: string);//-------------------------------////64. Set current directory//-------------------------------//。

(DELPHI)API函数大全

(DELPHI)API函数大全

(DELPHI)API函数大全(DELPHI)API函数大全1. API之网络函数WNetAddConnection 创建同一个网络资源的永久性连接WNetAddConnection2 创建同一个网络资源的连接WNetAddConnection3 创建同一个网络资源的连接WNetCancelConnection 结束一个网络连接WNetCancelConnection2 结束一个网络连接WNetCloseEnum 结束一次枚举操作WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接WNetDisconnectDialog 启动一个标准对话框,以便断开同网络资源的连接WNetEnumResource 枚举网络资源WNetGetConnection 获取本地或已连接的一个资源的网络名称WNetGetLastError 获取网络错误的扩展错误信息WNetGetUniversalName 获取网络中一个文件的远程名称以及/或者UNC (统一命名规范)名称WNetGetUser 获取一个网络资源用以连接的名字WNetOpenEnum 启动对网络资源进行枚举的过程2. API之消息函数BroadcastSystemMessage 将一条系统消息广播给系统中所有的顶级窗口GetMessagePos 取得消息队列中上一条消息处理完毕时的鼠标指针屏幕位置GetMessageTime 取得消息队列中上一条消息处理完毕时的时间PostMessage 将一条消息投递到指定窗口的消息队列PostThreadMessage 将一条消息投递给应用程序RegisterWindowMessage 获取分配给一个字串标识符的消息编号ReplyMessage 答复一个消息SendMessage 调用一个窗口的窗口函数,将一条消息发给那个窗口SendMessageCallback 将一条消息发给窗口SendMessageTimeout 向窗口发送一条消息SendNotifyMessage 向窗口发送一条消息3. API之文件处理函数CloseHandle 关闭一个内核对象。

Delphi常用函数手册

Delphi常用函数手册

Delphi常用函数手册函数由一句或多句代码组成,可以实现某个特定的功能。

使用函数可以使代码更加易读、易懂,加快编程速度及减少重复代码。

过程与函数类似,过程与函数最重要的区别在于,过程没有返回值,而函数能有返回值。

在Delphi7.0中,已为我们定义好了非常多的函数,大致分类有6种:数据类型转换函数、字符串、数组操作函数、文件、磁盘操作函数、内存、指针操作函数、数学运算函数、日期函数。

在Delphi中调用函数,一般情况下可以直接使用函数即可,但由于有一些函数未包含在Uses中列出的单元中(默认单元有Windows,Messages,SysUtils,Variants,Classes,Graphics, Controls,Forms,Dialogs;),所以需要我们手动添加单元。

比如,MidStr函数就未包含在这些单元中,MidStr所属单元在StrUtils中,因此我们将StrUtils 添加Uses中即可。

在本手册中,凡是未包含在默认列出的单元中的函数,都标明了其所属的单元,使用时应当注意。

一、数据类型转换函数在我们编写程序当中,根据不同情况,会使用到多种数据类型。

当要对不同的类型进行操作时,必须要将不同的类型转换成同样的类型。

因此熟练地掌握数据类型的转换是非常重要的。

1.FloatToStr功能说明:该函数用于将“浮点型”转换成“字符型”。

参考实例:Edit1.Text:= FloatToStr(1.981);2.IntToStr功能说明:该函数用于将“整数型”转换成“字符型”。

参考实例:S := IntToStr(10);(注:S为String类型变量。

)3.IntToHex功能说明:该函数用于将“十进制”转换成“十进制”。

该函数有二个参数。

第一个参数为要转换的十进制数据,第二个参数是指定使用多少位来显示十六进制数据。

参考实例:Edit1.Text :=IntToHex('100', 2);执行结果,Edit1.Text等于64。

DELPHI常用函数集及简要范例

DELPHI常用函数集及简要范例

----------abs(x) 绝对值arctan(x) 反正切cos(x) 传回馀弦函数值exp(x) e的x次幂frac(x) 取小数部分int(x) 取整ln(x) 自然对数sin(x) 传回正弦函数值sqr(x) x*xsqrt(x) 平方根其它pred(x) pred('D')='C', pred(true)=1;succ(x) succ('Y')='Z', succ(pred(x))=xord(x) 求x在字符集中的序号,如ord('A')=65chr(x) chr(65)='A'round(x) 四舍五入trunc(x) trunc(4.8)=4,trunc('-3.6')=-3upcase(x) upcase('a')='A'hi(I) hi($2A30)=$2Alo(I) lo($2A30)=$30random(n) 产生[0,n)间的随机整数sizeof(name) 求出某类型或变量在内存中占用的字节数swap(num) swap($3621)=$2136==========Arithmetic routines 数学运算==========Abs 绝对值----------Unit System函数原型 function Abs(X);说明 X为整数or实数.范例varr: Real;i: Integer;beginr := Abs(-2.3); { 2.3 }i := Abs(-157); { 157 }end;----------ArcTan 三角函数----------范例Cosvar R: Extended;beginR := Cos(Pi);end;----------Sin----------范例varR: Extended;S: string;beginR := Sin(Pi);Str(R:5:3, S);Canvas.TextOut(10, 10, 'The Sin of Pi is ' + S); end;----------Unit System函数原型 function ArcTan(X: Extended): Extended;函数原型 function Cos(X: Extended): Extended;函数原型 function Sin(X: Extended): Extended;----------说明 X为径度.Tan(x) === Sin(x) / Cos(x)ArcSin(x) = ArcTan (x/sqrt (1-sqr (x)))ArcCos(x) = ArcTan (sqrt (1-sqr (x)) /x) 左边这三个不是函数,而是右边运算求得.范例varR: Extended;beginR := ArcTan(Pi);end;范例 varR: Extended;S: string;beginR := Sin(Pi);Str(R:5:3, S);Canvas.TextOut(10, 10, 'The Sin of Pi is ' + S); end;----------Frac 求一个实数的小数部份Unit System函数原型 function Frac(X: Real): Real;说明 X为实数.范例 varR: Real;beginR := Frac(123.456); { 0.456 }R := Frac(-123.456); { -0.456 }end;----------Int 求一个实数的整数部份----------Unit System函数原型 function Int(X: Real): Real;说明 X为实数.范例 varR: Real;beginR := Int(123.456); { 123.0 }R := Int(-123.456); { -123.0 }end;----------Pi 就是数学的Pi----------Unit System函数原型 function Pi: Extended;说明它是一个函数,但我们就把它当作是预设的变数来用吧! Pi= 3.----------Sqr X的平方----------范例varS, Temp: string;beginStr(Sqr(5.0):3:1, Temp);S := '5 squared is ' + Temp + #13#10;Str(Sqrt(2.0):5:4, Temp);S := S + 'The square root of 2 is ' + Temp;MessageDlg(S, mtInformation, [mbOk], 0);end;----------Sqrt X的平方根Unit System函数原型 function Sqr(X: Extended): Extended;函数原型 function Sqrt(X: Extended): Extended;范例 varS, Temp: string;beginStr(Sqr(5.0):3:1, Temp);S := '5 squared is ' + Temp + #13#10;Str(Sqrt(2.0):5:4, Temp);S := S + 'The square root of 2 is ' + Temp; MessageDlg(S, mtInformation, [mbOk], 0);end;----------Ln 自然对数----------范例vare : real;S : string;begine := Exp(1.0);Str(ln(e):3:2, S);S := 'e = ' + FloatToStr(e) + '; ln(e) = ' + S; Canvas.TextOut(10, 10, S);end;----------Exp 指数----------Unit System函数原型 function Ln(X: Real): Real;函数原型 function Exp(X: Real): Real;范例 vare : real;S : string;begine := Exp(1.0);Str(ln(e):3:2, S);S := 'ln(e) = ' + S;Canvas.TextOut(10, 10, S);end;----------Date and time routines 日期及时间函数----------Date 传回目前的日期Unit SysUtils函数原型 function Date: TDateTime;范例 procedure TForm1.Button1Click(Sender: TObject);beginLabel1.Caption := 'Today is ' + DateToStr(Date);end;----------DateTimeToStr 日期时间转换成内定型字串(1996/12/20 09:12:20 PM)----------Unit SysUtils函数原型 function DateTimeToStr(DateTime: TDateTime): string;范例 procedure TForm1.Button1Click(Sender: TObject);beginLabel1.Caption := DateTimeToStr(Now);end;----------DateTimeToString 日期时间转换成自定型字串----------Unit SysUtils函数原型 procedure DateTimeToString(var Result: string; const Format: string; DateTime: TDateTime);范例 procedure TForm1.FormCreate(Sender: TObject);vars:string;beginDateTimeToString(s,'dddd,mmmm d,yyyy "at" hh:mmAM/PM',Now);Label1.Caption :=s;end;结果星期五,十二月 20,1996 at 09:20 PM----------**** Format格式叁考下面.FormatDateTime.----------DateToStr 日期转换成内定型字串.(1996/12/20)----------Unit SysUtils函数原型 function DateToStr(Date: TDateTime): string;范例procedure TForm1.Button1Click(Sender: TObject);beginLabel1.Caption := 'Today is ' + DateToStr(Date);end;# Date, DateToStr ExampleDayOfWeek 求叁数日期是星期几.----------Unit SysUtils函数原型 function DayOfWeek(Date: TDateTime): Integer;说明传回值是一整数,1~7.星期日为1.范例procedure TForm1.Button1Click(Sender: TObject);varADate: TDateTime;days: array[1..7] of string;begindays[1] := 'Sunday';days[2] := 'Monday';days[3] := 'Tuesday';days[4] := 'Wednesday';days[5] := 'Thursday';days[6] := 'Friday';days[7] := 'Saturday';ADate := StrToDate(Edit1.Text);ShowMessage(Edit1.Text + ' is a ' + days[DayOfWeek(ADate)];end;# StrToDate, DayOfWeek Example----------DecodeDate 将TDateTime型态的日期变数,转为Word型态.----------范例procedure TForm1.Button1Click(Sender: TObject);varPresent: TDateTime;Year, Month, Day, Hour, Min, Sec, MSec: Word;beginPresent:= Now;DecodeDate(Present, Year, Month, Day);Label1.Caption := 'Today is Day ' + IntToStr(Day) + ' of Month '+ IntToStr(Month) + ' of Year ' + IntToStr(Year);DecodeTime(Present, Hour, Min, Sec, MSec);Label2.Caption := 'The time is Minute ' + IntToStr(Min) + ' of Hour ' + IntToStr(Hour);end;# DecodeDate, DecodeTime Example----------DecodeTime 将TDateTime型态的时间变数,转为Word型态.Unit SysUtils函数原型 procedure DecodeDate(Date: TDateTime; var Year, Month,Day: Word);函数原型 procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec,MSec: Word); 范例 procedure TForm1.Button1Click(Sender: TObject);varPresent: TDateTime;Year, Month, Day, Hour, Min, Sec, MSec: Word;beginPresent:= Now;DecodeDate(Present, Year, Month, Day);Label1.Caption := 'Today is Day ' + IntToStr(Day) + ' ofMonth ' + IntToStr(Month) + ' of Year ' + IntToStr(Year);DecodeTime(Present, Hour, Min, Sec, MSec);Label2.Caption := 'The time is Minute ' +IntToStr(Min) + ' ofHour ' + IntToStr(Hour);end;----------EncodeDate 将Word型态的日期变数,转为TDateTime型态.----------范例procedure TForm1.Button1Click(Sender: TObject);varMyDate: TDateTime;beginMyDate := EncodeDate(StrToInt(Edit1.Text), StrToInt(Edit2.Text), StrToInt(Edit3.Text));Label1.Caption := DateToStr(MyDate);end;----------EncodeTime 将Word型态的时间变数,转为TDateTime型态.----------Unit SysUtils函数原型 function EncodeDate(Year, Month, Day: Word): TDateTime;函数原型 function EncodeTime(Hour, Min, Sec, MSec: Word):TDateTime;范例 procedure TForm1.Button1Click(Sender: TObject);varMyDate: TDateTime;MyTime: TDateTime;beginMyDate := EncodeDate(83, 12, 31);Label1.Caption := DateToStr(MyDate);MyTime := EncodeTime(0, 45, 45, 7);Label2.Caption := TimeToStr(MyTime);end;范例procedure TForm1.Button1Click(Sender: TObject);varMyTime: TDateTime;beginMyTime := EncodeTime(0, 45, 45, 7);Label1.Caption := TimeToStr(MyTime);end;----------FormatDateTime 将日期时间依Format的格式转换给一字串.----------Unit SysUtils函数原型 function FormatDateTime(const Format: string; DateTime:TDateTime): string;**** 类似DateTimeToString.Format格式c 内定值ShortDateFormat的格式.(1996/12/20 09:20:15 PM).d 日期,前面不补0.(1-31)dd 日期,前面补0.(01-31)ddd 星期.(星期日).Dddd 中文2.01版,同上.ddddd 日期.(1996/12/20)dddddd 日期.(1996年12月20日)m 月份,前面不补0.(1-12)mm 月份,前面补0.(01-12)mmm 中文显示.(十二月)mmmm 中文2.01版,同上.Yy 年度.(00-99)yyyy 年度.(0000-9999)h 小时.(0-23)hh 小时.(00-23)n 分钟.(0-59)nn 分钟.(00-59)s 秒钟.(0-59)ss 秒钟.(00-59)t 时间.(09:20 PM)tt 时间.(09:20:15 PM)am/pm 单独显示am or pm.(若大写,则显示大写)a/p 单独显示a or p.范例The following example assigns 'The meeting is on Wednesday, February 15, 1995 at 10:30 AM' to the string variable S.S := FormatDateTime('"The meeting is on " dddd, mmmm d, yyyy, " at " hh:mm AM/PM', StrToDateTime('2/15/95 10:30am'));//???----------Now 传回目前的日期时间.----------Unit SysUtils函数原型 function Now: TDateTime;范例procedure TForm1.Button1Click(Sender: TObject);beginLabel1.Caption := DateTimeToStr(Now);end;# Now, DateTimeToStr Example----------StrToDate 将字串转为TDateTime型态的日期.----------Unit SysUtils函数原型 function StrToDate(const S: string): TDateTime;范例 procedure TForm1.Button1Click(Sender: TObject);varADate: TDateTime;beginADate := StrToDate(Edit1.Text);Label1.Caption := DateToStr(ADate);end;范例procedure TForm1.Button1Click(Sender: TObject);varADate: TDateTime;days: array[1..7] of string;begindays[1] := 'Sunday';days[2] := 'Monday';days[3] := 'Tuesday';days[4] := 'Wednesday';days[5] := 'Thursday';days[6] := 'Friday';days[7] := 'Saturday';ADate := StrToDate(Edit1.Text);ShowMessage(Edit1.Text + ' is a ' + days[DayOfWeek(ADate)];end;# StrToDate, DayOfWeek Example----------StrToDateTime 将字串转为TDateTime型态的日期时间.----------Unit SysUtils函数原型 function StrToDateTime(const S: string): TDateTime;范例procedure TForm1.Button1Click(Sender: TObject);varADateAndTime: TDateTime;beginADateAndTime := StrToDateTime(Edit1.Text);Table1.FieldByName('TimeStamp').AsDateTime := ADateAndTime;end;----------StrToTime 将字串转为TDateTime型态的时间.----------Unit SysUtils函数原型 function StrToTime(const S: string): TDateTime;范例procedure TForm1.Button1Click(Sender: TObject);varATime: TDateTime;beginATime := StrToTime(Edit1.Text);if ATime < 0.50 thenShowMessage('Good Morning')elseShowMessage('Good Afternoon');end;----------Time 传回目前的时间.----------Unit SysUtils函数原型 function Time: TDateTime;范例procedure TForm1.Timer1Timer(Sender: TObject);varDateTime : TDateTime;str : string;beginDateTime := Time; // store the current date and timestr := TimeToStr(DateTime); // convert the time into a stringCaption := str; // display the time on the form's caption{ Note This could have been done with the following line of code: Caption := TimeToStr(Time); }end;# Time, TimeToStr Example----------TimeToStr 时间转换成内定型字串.(09:20:15 PM)----------Unit SysUtils函数原型 function TimeToStr(Time: TDateTime): string; GetMem procedure 配置记忆体程序New 配置指位器P的记忆体空间,大小为P所指型态的大小.----------Dispose 释放New所配置的记忆体.----------Unit System函数原型 procedure New(var P: Pointer);函数原型 procedure Dispose(var P: Pointer);范例 typePListEntry = ^TListEntry;TListEntry = recordNext: PListEntry;Text: string;Count: Integer;end;varList, P: PListEntry;begin...New(P);P^.Next := List;P^.Text := 'Hello world';P^.Count := 1;List := P;...Dispose(P);…end;范例typeStr18 = string[18];varP: ^Str18;beginNew(P);P^ := 'Now you see it...';Dispose(P); { Now you don't... }end;----------GetMem 配置指位器P的记忆体空间,大小可自行设定.----------范例varF: file;Size: Integer;Buffer: PChar;beginAssignFile(F, 'test.txt');Reset(F, 1);trySize := FileSize(F);GetMem(Buffer, Size);tryBlockRead(F, Buffer^, Size);ProcessFile(Buffer, Size);finallyFreeMem(Buffer);end;finallyCloseFile(F);end;end;----------FreeMem 释放GetMem所配置的记忆体.----------Unit System函数原型 procedure GetMem(var P: Pointer; Size: Integer);函数原型 procedure FreeMem(var P: Pointer[; Size: Integer]); 范例 varF: file;Size: Integer;Buffer: PChar;beginAssignFile(F, 'test.txt');Reset(F, 1);trySize := FileSize(F);GetMem(Buffer, Size);tryBlockRead(F, Buffer^, Size);ProcessFile(Buffer, Size);finallyFreeMem(Buffer);end;finallyCloseFile(F);end;end;==========File-management routines 档案管理常式==========----------ChangeFileExt 变更档案的副档名----------Unit SysUtils函数原型 function ChangeFileExt(const FileName, Extension: string): string;范例 procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;P2:String;beginP1:='abc.txt';P2:='.ini';S := ChangeFileExt(P1,P2);Label1.Caption:=S;end;结果 S== 'abc.ini'P1:='abc'P2:='.ini'S== 'abc.ini'P1:='c:\windows\abc.txt'P2:='.ini'S=='c:\windows\abc.ini'P1:='abc.txt'P2:='ini'S=='abcini'**注意:P2的第一位元必须有一点'.ini'范例procedure TForm1.ConvertIcon2BitmapClick(Sender: TObject);vars : string;Icon: TIcon;beginOpenDialog1.DefaultExt := '.ICO';OpenDialog1.Filter := 'icons (*.ico)|*.ICO';OpenDialog1.Options := [ofOverwritePrompt, ofFileMustExist, ofHideReadOnly ]; if OpenDialog1.Execute thenbeginIcon := TIcon.Create;tryIcon.Loadfromfile(OpenDialog1.FileName);s:= ChangeFileExt(OpenDialog1.FileName,'.BMP');Image1.Width := Icon.Width;Image1.Height := Icon.Height;Image1.Canvas.Draw(0,0,Icon);Image1.Picture.SaveToFile(s);ShowMessage(OpenDialog1.FileName + ' Saved to ' + s);finallyIcon.Free;end;end;end;# SaveToFile, Create, Height, Width, Canvas, ChangeFileExt example----------ExpandFileName 将档案名称加在目前所在之路径全名之後----------Unit SysUtils函数原型 function ExpandFileName(const FileName: string): string;说明设目前目录为 c:\windows 档案名称为 abc.txt则结果为 c:\windows\abc.txt**** 此函数并不是求abc.txt的所在路径.范例 procedure TForm1.Button1Click(Sender: TObject);varS: String;beginS:=ExpandFileName('abc.txt');Label1.Caption:=S;end;范例procedure TForm1.Button1Click(Sender: TObject)beginListBox1.Items.Add(ExpandFileName(Edit1.Text));end;----------DirectoryExists 目录是否存在----------UnitFileCtrluses FileCtrl;procedure TForm1.Button1Click(Sender: TObject);beginif not DirectoryExists('c:\temp') thenif not CreateDir('C:\temp') thenraise Exception.Create('Cannot create c:\temp');end;----------ForceDirectories 目录----------Unit FileCtrl函数原型 function ForceDirectories(Dir: string): Boolean;procedure TForm1.Button1Click(Sender: TObject);varDir: string;beginDir := 'C:\APPS\SALES\LOCAL';if DirectoryExists(Dir) thenLabel1.Caption := Dir + ' was created'end;----------ExpandUNCFileName 同上(只是得到网路上的路径)----------Unit SysUtils函数原型 function ExpandUNCFileName(const FileName: string):string; ExtractFileDir 分析字串中的路径Unit SysUtils函数原型 function ExtractFileDir(const FileName: string): string; 说明设S字串为 c:\windows\abc.txt则结果为 c:\windows**** 功能在於由任何部份传来的叁数,加以分析它的路径范例 procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFileDir(P1);Label1.Caption:=S;end;S=='c:\windows'P1:='abc.txt'S=='P1:='c:abc.txt'S=='c:'P1:='c:\abc.txt'S=='c:\'----------ExtractFileDrive 分析字串中的磁碟机名称----------Unit SysUtils函数原型 function ExtractFileDrive(const FileName: string): string; **** 功能同上,只是传回磁碟机名称.范例 procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFileDrive(P1);Label1.Caption:=S;end;S:='c:'P1:='abc.txt'S=='----------ExtractFileExt 分析字串中的档案名称的副档名----------Unit SysUtils函数原型 function ExtractFileExt(const FileName: string): string; 范例 procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFileExt(P1);Label1.Caption:=S;end;S=='.txt'P1:='c:\windows\abc'S=='范例 MyFilesExtension := ExtractFileExt(MyFileName);----------ExtractFileName 分析字串中的档案名称(只传回档案名称)----------Unit SysUtils函数原型 function ExtractFileName(const FileName: string): string; 范例 procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFileName(P1);Label1.Caption:=S;end;S=='abc.txt'范例procedure TForm1.Button1Click(Sender: TObject);varBackupName: string;FileHandle: Integer;StringLen: Integer;X: Integer;Y: Integer;beginif SaveDialog1.Execute thenbeginif FileExists(SaveDialog1.FileName) thenbeginBackupName := ExtractFileName(SaveDialog1.FileName);BackupName := ChangeFileExt(BackupName, '.BAK');if not RenameFile(SaveDialog1.FileName, BackupName) thenraise Exception.Create('Unable to create backup file.');end;FileHandle := FileCreate(SaveDialog1.FileName);{ Write out the number of rows and columns in the grid. }FileWrite(FileHandle,StringGrid1.ColCount, SizeOf(StringGrid1.ColCount));FileWrite(FileHandle,StringGrid1.RowCount, SizeOf(StringGrid1.RowCount));for X := 0 to StringGrid1.ColCount ? 1 dobeginfor Y := 0 to StringGrid1.RowCount ? 1 dobegin{ Write out the length of each string, followed by the string itself. } StringLen := Length(StringGrid1.Cells[X,Y]);FileWrite(FileHandle, StringLen, SizeOf(StringLen));FileWrite(FileHandle,StringGrid1.Cells[X,Y], Length(StringGrid1.Cells[X,Y]);end;end;FileClose(FileHandle);end;end;##FileExists, RenameFile, FileCreate, FileWrite, FileClose, ExtractFileName Example ----------ExtractFilePath 分析字串中的路径----------Unit SysUtils函数原型 function ExtractFilePath(const FileName: string): string;说明设S字串为 c:\windows\abc.txt则结果为 c:\windows范例 procedure TForm1.Button1Click(Sender: TObject);varS: String;P1:String;beginP1:='c:\windows\abc.txt';S:=ExtractFilePath(P1);Label1.Caption:=S;end;范例beginwith Session dobeginConfigMode := cmSession;tryAddStandardAlias('TEMPDB', ExtractFilePath(ParamStr(0)), 'PARADOX'); finallyConfigMode := cmAll;end;end;##ConfigMode, AddStandardAlias, ExtractFilePath example----------FileSearch 寻找档案在磁碟机中的正确路径----------Unit SysUtils函数原型 function FileSearch(const Name, DirList: string): string;范例 vars:string;begins:= FileSearch('abc.txt', 'c:\window\');Label1.Caption:=s;end;说明找到传回c:\window\abc.txt 找不到传回空字串.范例procedure TForm1.Button1Click(Sender: TObject);varbuffer: array [0..255] of char;FileToFind: string;beginGetWindowsDirectory(buffer, SizeOf(buffer));FileToFind := FileSearch(Edit1.Text, GetCurrentDir + ';' + buffer);if FileToFind = ' thenShowMessage('Couldn't find ' + Edit1.Text + '.')elseShowMessage('Found ' + FileToFind + '.');end;##FileSearch, ShowMessage Example----------FileAge 传回档案的日期及时间(DOS型态).----------Unit SysUtils函数原型 function FileAge(const FileName: string): Integer;说明就是档案总管中档案内容裹面的修改日期.范例 procedure TForm1.Button1Click(Sender: TObject);varS: String;FileDate1:Integer;DateTime1:TDateTime;beginFileDate1 := FileAge('c:\delphi_d\delphi_help1.txt');DateTime1 := FileDateToDateTime(FileDate1);S := DateTimeToStr(DateTime1);Label1.Caption:=S;end;----------FileDateToDateTime 将DOS型态的日期时间转换为TDateTime型态.----------Unit SysUtils函数原型 function FileDateToDateTime(FileDate: Integer):TDateTime; ----------DateTimeToFileDate 将TDateTime型态的日期时间转换为 DOS型态.----------Unit SysUtils函数原型 function DateTimeToFileDate(DateTime: TDateTime):Integer; FileGetDate 传回档案的日期及时间(DOS型态).Unit SysUtils函数原型 function FileGetDate(Handle: Integer): Integer;说明就是档案总管中档案内容裹面的修改日期.范例 procedure TForm1.Button1Click(Sender: TObject);varFileHandle:Integer;S: String;FileDate1:Integer;DateTime1:TDateTime;beginFileHandle :=FileOpen('c:\delphi_d\delphi_help2.txt',fmOpenReadWrite);if FileHandle > 0 thenBeginFileDate1 := FileGetDate(FileHandle);DateTime1 := FileDateToDateTime(FileDate1);S := DateTimeToStr(DateTime1);FileClose(FileHandle);EndelseS := 'Open File Error';Label1.Caption:=S;end;----------FileSetDate 设定档案的日期及时间(DOS型态).----------Unit SysUtils函数原型 function FileSetDate(Handle: Integer; Age: Integer): Integer; 说明传回值为0表示成功.----------DeleteFile 删除档案----------Unit SysUtils函数原型 function DeleteFile(const FileName: string): Boolean;范例一 DeleteFile('DELETE.ME');范例二 if FileExists(FileName) thenif MessageDlg('Do you really want to delete ' +ExtractFileName(FileName) + '?'), []) = IDYes thenDeleteFile(FileName);##FileExists, DeleteFile Example----------RenameFile 更改档名----------Unit SysUtils函数原型 function RenameFile(const OldName, NewName: string):Boolean; 范例procedure TForm1.Button1Click(Sender: TObject);varBackupName: string;FileHandle: Integer;StringLen: Integer;X: Integer;Y: Integer;beginif SaveDialog1.Execute thenbeginif FileExists(SaveDialog1.FileName) thenbeginBackupName := ExtractFileName(SaveDialog1.FileName);BackupName := ChangeFileExt(BackupName, '.BAK');if not RenameFile(SaveDialog1.FileName, BackupName) thenraise Exception.Create('Unable to create backup file.');end;FileHandle := FileCreate(SaveDialog1.FileName);{ Write out the number of rows and columns in the grid. }FileWrite(FileHandle,StringGrid1.ColCount, SizeOf(StringGrid1.ColCount));FileWrite(FileHandle,StringGrid1.RowCount, SizeOf(StringGrid1.RowCount));for X := 0 to StringGrid1.ColCount ? 1 dobeginfor Y := 0 to StringGrid1.RowCount ? 1 dobegin{ Write out the length of each string, followed by the string itself. } StringLen := Length(StringGrid1.Cells[X,Y]);FileWrite(FileHandle, StringLen, SizeOf(StringLen));FileWrite(FileHandle,StringGrid1.Cells[X,Y], Length(StringGrid1.Cells[X,Y]);end;end;FileClose(FileHandle);end;end;----------DiskFree 磁碟机剩馀空间(Bytes)----------Unit SysUtils函数原型 function DiskFree(Drive: Byte): Integer;范例 varS: string;beginS := IntToStr(DiskFree(0) div 1024) + ' Kbytes free.';Label1.Caption:=S;end;说明 Drive0=目前磁碟机,1=A磁碟机,2=B磁碟机...传回值若为-1,表示磁碟机侦测错误.范例varS: string;AmtFree: Int64;Total: Int64;beginAmtFree := DiskFree(0);Total := DiskSize(0);S := IntToStr(AmtFree div Total) + 'percent of the space on drive 0 is free: ' (AmtFree div 1024) + ' Kbytes free. ';Canvas.TextOut(10, 10, S);end;##DiskFree, DiskSize Example----------DiskSize 磁碟机空间大小(Bytes)Unit SysUtils函数原型 function DiskSize(Drive: Byte): Integer;范例 varS: string;beginS := IntToStr(DiskSize(0) div 1024) + ' Kbytes free.';Label1.Caption:=S;end;说明 Drive0=目前磁碟机,1=A磁碟机,2=B磁碟机....传回值若为-1,表示磁碟机侦测错误.##DiskFree, DiskSize Example----------FileExists 判断档案是否存在.----------Unit SysUtils函数原型 function FileExists(const FileName: string): Boolean;类似FileExists, RenameFile, FileCreate, FileWrite, FileClose, ExtractFileName Example范例procedure TForm1.Button1Click(Sender: TObject);varBackupName: string;FileHandle: Integer;StringLen: Integer;X: Integer;Y: Integer;beginif SaveDialog1.Execute thenbeginif FileExists(SaveDialog1.FileName) thenbeginBackupName := ExtractFileName(SaveDialog1.FileName);BackupName := ChangeFileExt(BackupName, '.BAK');if not RenameFile(SaveDialog1.FileName, BackupName) thenraise Exception.Create('Unable to create backup file.');end;FileHandle := FileCreate(SaveDialog1.FileName);{ Write out the number of rows and columns in the grid. }FileWrite(FileHandle,StringGrid1.ColCount, SizeOf(StringGrid1.ColCount));FileWrite(FileHandle,StringGrid1.RowCount, SizeOf(StringGrid1.RowCount));for X := 0 to StringGrid1.ColCount ? 1 dofor Y := 0 to StringGrid1.RowCount ? 1 dobegin{ Write out the length of each string, followed by the string itself. } StringLen := Length(StringGrid1.Cells[X,Y]);FileWrite(FileHandle, StringLen, SizeOf(StringLen));FileWrite(FileHandle,StringGrid1.Cells[X,Y], Length(StringGrid1.Cells[X,Y]);end;end;FileClose(FileHandle);end;end;##FileExists, DeleteFile Example##FileExists, RenameFile, FileCreate, FileWrite, FileClose, ExtractFileName Example ----------FileOpen 开档.----------Unit SysUtils函数原型 function FileOpen(const FileName: string; Mode:Integer):Integer;**** 开档失败传回-1.说明以下有关档案读取都属低阶,如Dos Int 21h中有关档案的部分.fmOpenRead = $0000;fmOpenWrite = $0001;fmOpenReadWrite = $0002;fmShareCompat = $0000;fmShareExclusive = $0010;fmShareDenyWrite = $0020;fmShareDenyRead = $0030;fmShareDenyNone = $0040;fmOpenRead Open for read access only.FmOpenWrite Open for write access only.FmOpenReadWrite Open for read and write access.fmShareCompat Compatible with the way FCBs areopened.fmShareExclusive Read and write access is denied.fmShareDenyWrite Write access is denied.fmShareDenyRead Read access is denied.fmShareDenyNone Allows full access for others.范例procedure OpenForShare(const FileName: String);varFileHandle : Integer;beginFileHandle := FileOpen(FileName, fmOpenWrite or fmShareDenyNone); if FileHandle > 0 then{valid file handle}else{Open error: FileHandle = negative DOS error code}end;范例procedure TForm1.Button1Click(Sender: TObject);variFileHandle: Integer;iFileLength: Integer;iBytesRead: Integer;Buffer: PChar;i: Integerbeginif OpenDialog1.Execute thenbegintryiFileHandle := FileOpen(OpenDialog1.FileName, fmOpenRead);iFileLength := FileSeek(iFileHandle,0,2);FileSeek(iFileHandle,0,0);Buffer := PChar(AllocMem(iFileLength + 1));iBytesRead = FileRead(iFileHandle, Buffer, iFileLength);FileClose(iFileHandle);for i := 0 to iBytesRead-1 dobeginStringGrid1.RowCount := StringGrid1.RowCount + 1;StringGrid1.Cells[1,i+1] := Buffer[i];StringGrid1.Cells[2,i+1] := IntToStr(Integer(Buffer[i])); end;finallyFreeMem(Buffer);end;end;end;##FileOpen, FileSeek, FileRead Example----------FileCreate 建档----------Unit SysUtils函数原型 function FileCreate(const FileName: string): Integer;范例procedure TForm1.Button1Click(Sender: TObject);varBackupName: string;FileHandle: Integer;StringLen: Integer;X: Integer;Y: Integer;beginif SaveDialog1.Execute thenbeginif FileExists(SaveDialog1.FileName) thenbeginBackupName := ExtractFileName(SaveDialog1.FileName);BackupName := ChangeFileExt(BackupName, '.BAK');if not RenameFile(SaveDialog1.FileName, BackupName) thenraise Exception.Create('Unable to create backup file.');end;FileHandle := FileCreate(SaveDialog1.FileName);{ Write out the number of rows and columns in the grid. }FileWrite(FileHandle,StringGrid1.ColCount, SizeOf(StringGrid1.ColCount));FileWrite(FileHandle,StringGrid1.RowCount, SizeOf(StringGrid1.RowCount));for X := 0 to StringGrid1.ColCount ? 1 dobeginfor Y := 0 to StringGrid1.RowCount ? 1 dobegin{ Write out the length of each string, followed by the string itself. } StringLen := Length(StringGrid1.Cells[X,Y]);FileWrite(FileHandle, StringLen, SizeOf(StringLen));FileWrite(FileHandle,StringGrid1.Cells[X,Y], Length(StringGrid1.Cells[X,Y]);end;end;FileClose(FileHandle);end;end;##FileExists, RenameFile, FileCreate, FileWrite, FileClose, ExtractFileName Example ----------。

delphi常用函数(带使用实例)

delphi常用函数(带使用实例)

delphi常用函数(带使用实例)//-------------------------------delphi 常用函数1.Abs功能说明:求绝对值。

参考实例:varr: Single;i: Integer;beginr := Abs(-2.8); // r等于 2.8i := Abs(-156); // I 等于 156end;2.AllocMem功能说明:分配内存空间并自动初始化为零。

如果不需要初始化为零,可以使用GetMem代替AllocMem。

参考实例:varBuffer: PChar;beginBuffer := AllocMem(256); // 分配大小为256个字节的内存空间end;3.Append功能说明:追加内容到文件中。

文件必须要存在。

参考实例:varS: String;F: TextFile;beginS := 'This is a book.';AssignFile(F, 'C:\MyFile.txt'); // 将C:\MyFile.txt文件与F变量建立连接,后面可以使用F变量对文件进行操作。

Append(F); // 以追加的方式打开文件Writeln(F, S); // 将S变量中的内容追加到文本尾后。

CloseFile(F); // 关闭文件end;4.AssignFile功能说明:与指定的文件建立连接。

参考实例:varF: TextFile; // 声明文本文件类型变量beginAssignFile(F, 'C:\MyFile.txt'); // 将C:\MyFile.txt文件与F变量建立连接,后面可以使用F变量对文件进行操作。

end;5.ChDir功能说明:改变当前目录(文件夹)。

参考实例:varsDir: String;beginsDir := 'C:\Windows';ChDir(sDir); // 此时,系统的当前目录则为C:\Windows目录。

Delphi函数大全

Delphi函数大全

Delphi函数大全名称类型说明---------------------------------------------------------------------------------------------------------------------------------- Abort 函数引起放弃的意外处理Abs 函数绝对值函数AddExitProc 函数将一过程添加到运行时库的结束过程表中Addr 函数返回指定对象的地址AdjustLineBreaks 函数将给定字符串的行分隔符调整为CR/LF序列Align 属性使控件位于窗口某部分Alignment 属性控件标签的文字位置AllocMem 函数在堆栈上分配给定大小的块AllowGrayed 属性允许一个灰度选择AnsiCompareStr 函数比较字符串(区分大小写)AnsiCompareText 函数比较字符串(不区分大小写)AnsiLowerCase 函数将字符转换为小写AnsiUpperCase 函数将字符转换为大写Append 函数以附加的方式打开已有的文件ArcT an 函数余切函数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 在字符串中插入子串IntT oHex 将整型数转换为十六进制数IntT oStr 将整型数转换为字符串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 函数返回圆周率PiPicture 属性显示图象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 函数比较两个字符串(不区分大小写)StringT oWideChar 函数将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 函数测试变体是否为UNASSIGNEDVarIsNull 函数测试变体是否为NULLVarToDateTime 函数将给定的变体转换为日期时间VarType 函数将变体转换为指定的类型并保存他Visible 属性控件的可见性WantReturns 属性为True时,按回车键产生一个回车符;为False时,按下Ctrl+Enter才产生回车符Write 命令对有格式的文件,写一变量到文件组件中;对文本文件,写一个或多个值到文件中Writeln 命令执行WRITE过程,然后输出一行结束标志WideCharLenToString 函数将ANSI字符串转换为UNICODE字符串WideCharLenToStrWar 函数将UNICODE字符串转换为ANSI字符串变量WideCharToString 函数将UNICODE字符串转换为ANSI字符串WideCharToStrVar 函数将UNICODE字符串转换为ANSI字符串变量。

delphi常用函数1

delphi常用函数1
参考实例:
Label1.Caption := IntToStr(YearOf(Date)); 假设当前日期为2005年1月2日,那么Label将显示为2005。
end;
2. MkDir
创建一个新的子目录(文件夹)。
参考实例:
MkDir('C:\MyFolder'); // 在C盘根目录中创建了一个名叫MyFolder的文件夹。
需要注意的是,如果在本身不存在的目录中创建子目录将会失败。比如C盘根本不存在Flash文件夹,
写成MkDir('C:\Flash\MyFolder');这样将不能成功创建MyFolder文件夹。
end;
9.MonthOf(所在单元:DateUtils)
功能说明:根据指定的日期,返回月份。
参考实例:
Label1.Caption := IntToStr(MonthOf(Date));
假设当前日期为2005年1月2日,那么Label将显示为1。
10.Now
功能说明:返回当前日期及时间。
Floor(-1.0) = -1
4.Int
功能说明:返回参数中的整数部分。
参考实例:
var
R: Real;
begin
R := Int(123.456); // R等于 123.0
R := Int(-123.456); // R等于 -123.0
end;
5.Max(所在单元:Math)
功能说明:比较两个数字,并返回最大的一个数字。
参考实例:
var
k: Integer;
begin
k := Max(10, 20); // k将为20

Delphi常用函数和过程

Delphi常用函数和过程

8.1 数据类型转化类本节所列函数和过程一般都定义在System 或者SysUtils 单元。

8.1.1 数值和字符串的相互转化procedure Str(X [: Width [: Decimals ]]; var S);将数值X 按照一定格式转化为字符串S。

Width 指定S 的总长度,如果X 是实数,Decimals 指定小数点后的位数。

如:varS: String;beginStr(12.2:6:2,S); {S=’ 12.20’}end;procedure Val(S; var V; var Code: Integer);将字符串S 转化为数值V。

如果不能转化,则Code 返回第一个非法字符的位置。

如:varV,Code: Integer;beginVal(’12.00’, V, Code); {没能成功转化,Code返回’.’的位置3}end;8.1.2 整数和字符串的相互转化function IntToStr(Value: Integer): string; overload;function IntToStr(Value: Int64): string; overload;第一个用于32Bit 整数的转化,第二个用于64Bit 整数的转化。

因为Cardinal、Longword 等和Integer 是兼容的(即是说一个Integer 变量总是可以无损失地存储一个Cardinal 或者Longword 变量的值,因为Integer 的取值范围完全包含了它们的取值范围)。

function StrToInt(const S: string): Integer;function StrToInt64(const S: string): Int64;将一个字符串转化为整数。

如果S 包含非数字字符(如“ 1A”、“ 1.2”),则运行时产生异常。

但是S 也可以是十六进制表示方法,如“ $A”,那么会返回十进制数10。

delphi函数大全

delphi函数大全
例子 CheckBox1.Checked := AnsiEndsStr(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
函数 function AnsiReplaceStr(const AText, AFromText, AToText: string): string; $[StrUtils.pas
函数 function AnsiEndsStr(const ASubText, AText: string): Boolean; $[StrUtils.pas
功能 返回字符串AText是否以子串ASubText结尾
说明 区分大小写
参考 function SysUtils.AnsiSameStr
功能 返回字符串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
说明 不区分大小写
参考 function StrUtils.AnsiIndexText
例子 CheckBox1.Checked := AnsiMatchText(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);

delphi函数定义及实现

delphi函数定义及实现

delphi函数定义及实现Delphi函数定义及实现Delphi是一种面向对象的编程语言,它的函数定义和实现是非常重要的部分。

在Delphi中,函数是一种可重用的代码块,它可以接受参数并返回一个值。

在本文中,我们将讨论Delphi函数的定义和实现。

在Delphi中,函数定义由函数名、参数列表和返回类型组成。

下面是一个简单的函数定义示例:function AddNumbers(a, b: Integer): Integer;在这个函数定义中,函数名是AddNumbers,它接受两个整数参数a和b,并返回一个整数值。

在函数定义中,参数列表用括号括起来,参数之间用逗号分隔。

返回类型在函数名后面用冒号指定。

函数实现函数实现是函数定义的具体实现。

在Delphi中,函数实现由函数体组成。

函数体是一组语句,它们定义了函数的操作。

下面是一个简单的函数实现示例:function AddNumbers(a, b: Integer): Integer;beginResult := a + b;end;在这个函数实现中,函数体由一个begin和end语句块组成。

在begin和end之间,我们定义了一个操作,它将a和b相加,并将结果存储在Result变量中。

最后,函数返回Result变量的值。

函数调用函数调用是使用函数的过程。

在Delphi中,函数调用由函数名和参数列表组成。

下面是一个简单的函数调用示例:vara, b, c: Integer;begina := 1;b := 2;c := AddNumbers(a, b);end;在这个函数调用中,我们定义了三个整数变量a、b和c。

然后,我们将a和b的值分别设置为1和2。

最后,我们调用AddNumbers函数,并将a和b作为参数传递。

函数返回的结果存储在c变量中。

总结在Delphi中,函数定义和实现是非常重要的部分。

函数定义由函数名、参数列表和返回类型组成,而函数实现由函数体组成。

Delphi_Api函数大全

Delphi_Api函数大全

llseek 设置文件中进行读写的当 前位置 LockFile 锁定文件的某一部分, 使其不与其他应用程序共享 LockFileEx 与LockFile相似,只 是它提供了更多的功能 lopen 以二进制模式打开指定的文 件 lread 将文件中的数据读入内存缓 冲区 lwrite 将数据从内存缓冲区写入 一个文件 LZClose 关闭由LZOpenFile 或 LZInit函数打开的一个文件 LZCopy 复制一个文件 LZInit 这个函数用于初始化内部 缓冲区 LZOpenFile 该函数能执行大量不 同的文件处理,而且兼容于压缩文 件 LZRead 将数据从文件读入内存缓 冲区 LZSeek 设置一个文件中进行读写 的当前位置 MapViewOfFile 将一个文件映射对 象映射到当前应用程序的地址空间 MoveFile 移动文件 OpenFile 这个函数能执行大量不 同的文件操作 OpenFileMapping 打开一个现成的 文件映射对象 QueryDosDevice 在Windows NT 中,DOS设备名会映射成NT系统设 备名。该函数可判断当前的设备映 射情况 ReadFile 从文件中读出数据 ReadFileEx 与ReadFile相似,只 是它只能用于异步读操作,并包含 了一个完整的回调 RegCloseKey 关闭系统注册表中的 一个项(或键) RegConnectRegistry 访问远程系 统的部分注册表 RegCreateKey 在指定的项下创建 或打开一个项
RegCreateKeyEx 在指定项下创建 新项的更复杂的方式。在Win32环 境中建议使用这个函数 RegDeleteKey 删除现有项下方一 个指定的子项 RegDeleteValue 删除指定项下方 的一个值 RegEnumKey 枚举指定项的子项。 在Win32环境中应使用 RegEnumKeyEx RegEnumKeyEx 枚举指定项下方的 子项 RegEnumValue 枚举指定项的值 RegFlushKey 将对项和它的子项作 出的改动实际写入磁盘 RegGetKeySecurity 获取与一个注 册表项有关的安全信息 RegLoadKey 从以前用RegSaveKey 函数创建的一个文件里装载注册表 信息 RegNotifyChangeKeyValue 注册表 项或它的任何一个子项发生变化 时,用这个函数提供一种通知机制 RegOpenKey 打开一个现有的注册 表项 RegOpenKeyEx 打开一个现有的项 。在win32下推荐使用这个函数 RegQueryInfoKey 获取与一个项有 关的信息 RegQueryValue 取得指定项或子项 的默认(未命名)值 RegQueryValueEx 获取一个项的设 置值 RegReplaceKey 用一个磁盘文件保 存的信息替换注册表信息;并创建 一个备份,在其中包含当前注册表 信息 RegRestoreKey 从一个磁盘文件恢 复注册表信息 RegSaveKey 将一个项以及它的所 有子项都保存到一个磁盘文件 RegSetKeySecurity 设置指定项的 安全特性 RegSetValue 设置指定项或子项的 默认值 RegSetValueEx 设置指定项的值

Delphi必熟的基本函数

Delphi必熟的基本函数

Delphi必须掌握的基本函数:数值函数:Abs 函数绝对值函数。

Abs(-1) = 1;Exp 函数指数函数。

Odd 函数测试参数是否为奇数。

odd(1) = TruePi 函数返回圆周率Pi。

Random 函数返回一随机函数。

(产生一个大于0小于1的小数);Randomize 函数用一随机数初始化内置的随机数生成器。

Sqr 函数平方函数。

Sqr(3) =9Sqrt 函数平方根函数。

Sryt(9) 3Frac 函数返回参数的小数部分。

Frac(3.14) = 0.14Int 函数返回参数的整数部分。

int(3.6) = 3Round 函数将实数值四舍五入取整型值。

Round(3.6) = 4Trunc 函数将实型值截取为整型值。

//Ceil 函数直接往大的取整,比如Ceil(-123.55) = -123,Ceil(123.55) = 124。

需要引用单元Math.pas。

Floor 函数直接往小的取整,比如Floor(-123.55) = -124,Floor(123.55) = 123。

需要引用单元Math.pas。

ReverseString 翻转字符串倒序输出来ReverseString(abcd)=dcba字符串函数:CompareStr 函数比较字符串(区分大小写)。

StrComp 函数比较两个字符串(区分大小写)。

StrIComp 函数比较两个字符串(不区分大小写)。

Concat 函数合并字符串。

Copy 函数返回一字符串的子串。

Delete 函数从字符串中删除子串。

Insert 函数在字符串中插入子串。

Pos 函数在字符串中搜索子串。

Format 函数格式化一系列的参数并返回Pascal字符串。

FormatDateTime 函数用指定的格式来格式化日期和时间。

formatdatetime('c', Now)字符c以短时间格式显示时间,即全部是数字的表示。

d对应时间中的日期,dd是输出两位的日期。

Delphi函数大全

Delphi函数大全

Delphi函数大全Delphi函数大全首部function Languages: TLanguages; $[功能返回系统语言对象说明通过此函数可以得到系统的语言环境参考type例子12a12c12a12c.参考例子:= IsValidIdent;━━━━━━━━━━━━━━━━━━━━━首部function IntT oStr(Value: Integer): string; overload; $[首部function IntT oStr(Value: Int64): string; overload; $[功能返回整数Value转换成字符串说明Format('%d', [Value])参考function例子:= IntToStr;━━━━━━━━━━━━━━━━━━━━━首部function IntT oHex(V alue: Integer; Digits: Integer): string; overload; $[首部function IntT oHex(V alue: Int64; Digits: Integer): string; overload; $[功能返回整数Value转换成十六进制表现结果;Format('%.*x', [Digits, Value]) 说明参数Digits指定字符最小宽度;最小宽度不足时将用0填充参考function例子:= IntToHex, ;━━━━━━━━━━━━━━━━━━━━━首部function StrToInt(const S: string): Integer; $[功能返回字符串S转换成整数说明字符串非整数表达时将引起异常参考procedure例子:= StrT oInt;━━━━━━━━━━━━━━━━━━━━━首部function StrT oIntDef(const S: string; Default: Integer): Integer; $[功能返回字符串S转换成整数说明字符串非整数表达时则返回默认值Default参考procedure例子:= StrT oIntDef, 0);━━━━━━━━━━━━━━━━━━━━━首部function TryStrToInt(const S: string; out Value: Integer): Boolean; $[功能返回字符串S转换成整数V alue是否成功说明字符串非整数表达时返回False并且Value将输出为0参考procedure例子..);打开失败则返回负数参考function例子xe'参考function ;function例子:= ExtractFileExt;━━━━━━━━━━━━━━━━━━━━━首部function ExpandFileName(const FileName: string): string; $[功能返回文件名的完整表示说明ExpandFileName('')='C:\Program Files\Borland\Delphi6\Projects\'参考function例子:= ExpandFileName;━━━━━━━━━━━━━━━━━━━━━首部function ExpandFileNameCase(const FileName: string; out MatchFound: TFilenameCaseMatch): string; $[功能分情况返回文件名的完整表示说明type TFilenameCaseMatch = (mkNone, mkExactMatch, mkSingleMatch, mkAmbiguous); 参考function ;function ;function 例子.;获取失败则返回-1参考function例子:= DiskFree;━━━━━━━━━━━━━━━━━━━━━首部function DiskSize(Drive: Byte): Int64; $[功能返回驱动器全部空间说明参数Drive为0表示当前路径,为1表示=A驱,为2表示=B 驱...;获取失败则返回-1参考function例子:= DiskSize;━━━━━━━━━━━━━━━━━━━━━首部function FileDateToDateTime(FileDate: Integer): TDateTime; $[功能返回将文件日期时间类型转换日期时间类型说明FileDate非法是将触发异常参考function ;function例子<参见FileAge>━━━━━━━━━━━━━━━━━━━━━首部function DateTimeToFileDate(DateTime: TDateTime): Integer; $[功能返回将日期时间类型转换文件日期时间类型说明年份在1980到2107之外则返回0参考function ;function例子<参见FileSetDate>━━━━━━━━━━━━━━━━━━━━━首部function GetCurrentDir: string; $[功能返回当前操作目录说明[注意]调用文件对话框会改变当前操作目录参考function例子:= GetCurrentDir;━━━━━━━━━━━━━━━━━━━━━首部function SetCurrentDir(const Dir: string): Boolean; $[ 功能返回设置当前操作目录是否成功说明[注意]调用文件对话框会改变当前操作目录参考function例子:= SetCurrentDir;━━━━━━━━━━━━━━━━━━━━━首部function CreateDir(const Dir: string): Boolean; $[功能返回创建目录是否成功说明不支持多级目录;已经存在则返回False参考function例子:= CreateDir;━━━━━━━━━━━━━━━━━━━━━首部function RemoveDir(const Dir: string): Boolean; $[ 功能返回删除目录是否成功说明必须是空目录参考function例子:= RemoveDir;━━━━━━━━━━━━━━━━━━━━━首部function StrLen(const Str: PChar): Cardinal; $[功能返回指针字符串的长度说明当指针字符串Str为nil时将触发异常参考例子:= StrLen(PChar);━━━━━━━━━━━━━━━━━━━━━首部function StrEnd(const Str: PChar): PChar; $[功能返回指针字符串的结尾说明当指针字符串Str为nil时将触发异常参考例子:= StrEnd(PChar) - ;━━━━━━━━━━━━━━━━━━━━━首部function StrMove(Dest: PChar; const Source: PChar; Count: Cardinal): PChar; $[ 功能返回将指针字符串Source指定内存数量Count复制覆盖到指针字符串Dest中说明Dest没有分配资源将触发异常s参考function例子255] of Char;beginStrECopy(StrECopy(vBuffer, PChar), PChar);:= vBuffer;end;255] of Char;beginStrLCopy(vBuffer, PChar, ;:= vBuffer;end;255] of Char;beginStrPCopy(vBuffer, PChar);:= vBuffer;end;255] of Char;beginStrPLCopy(vBuffer, , ;:= vBuffer;end;255] of Char;beginStrPCopy(vBuffer, ;StrCat(vBuffer, PChar);:= vBuffer;end;255] of Char;beginStrPCopy(vBuffer, ;StrLCat(vBuffer, PChar, ;:= vBuffer;end;2005-7-26 摘要] 类型Format('x=%d', [12]); 3f, []); f', [5, ]); d', [12]); x', [12]); 0000C255] of Char;E: Extended;beginE := StrToFloatDef, 0);:= FloatToText(vBuffer, E,fvExtended, ffNumber, , ;:= Copy(vBuffer, 1, ;end;0', 90) = '1,234,567,'参考function例子:= FormatFloat, StrToFloatDef, 0));━━━━━━━━━━━━━━━━━━━━━首部function FormatCurr(const Format: string; Value: Currency): string; $[功能返回货币类型以指定格式字符串Format转换成字符串说明FormatCurr(',.00', 90) = '1,234,567,'参考function例子:= FormatCurr, StrToCurrDef, 0));━━━━━━━━━━━━━━━━━━━━━首部function FloatToTextFmt(Buf: PChar; const Value; ValueType: TFloatValue; Format:PChar): Integer; $[功能返回浮点数以指定格式字符串Format转换成指针字符串的内存大小说明ValueType指定无类型参数Value的类型参考例子255] of Char;E: Extended;beginE := StrToFloatDef, 0);:= FloatToTextFmt(vBuffer, E,fvExtended, PChar);:= Copy(vBuffer, 1, ;end;7] of string =('星期天', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六');begin:= cWeekCn[DayOfWeek(Now)];end;2002-03-092002年03月09日255] of Char;beginExceptionErrorMessage(Self, Self, vBuffer, 255);Caption := vBuffer;end;, '') = 16参考function ;function例子:= LastDelimiter, ;━━━━━━━━━━━━━━━━━━━━━首部function AnsiCompareFileName(const S1, S2: string): Integer; $[功能返回比较两个文件名说明当S1>S2返回值>0;当S1<s2返回值< bdsfid="265" p=""></s2返回值<>例子:= AnsiCompareFileName, ;━━━━━━━━━━━━━━━━━━━━━首部function SameFileName(const S1, S2: string): Boolean; $[功能返回两个文件名是否相等说明区分大小写参考function例子:= SameFileName, ;━━━━━━━━━━━━━━━━━━━━━首部function AnsiLowerCaseFileName(const S: string): string; $[功能返回小写文件名说明在非多字节字符系统上相当于AnsiLowerCase参考function例子:= AnsiLowerCaseFileName;━━━━━━━━━━━━━━━━━━━━━首部function AnsiUpperCaseFileName(const S: string): string;$[功能返回大写文件名说明在非多字节字符系统上相当于AnsiUpperCase参考function例子:= AnsiUpperCaseFileName;━━━━━━━━━━━━━━━━━━━━━首部function AnsiPos(const Substr, S: string): Integer; $[功能返回子串Substr在字符中第一次出现的位置说明不存在则返回0参考例子:= AnsiPos, ;━━━━━━━━━━━━━━━━━━━━━首部function AnsiStrPos(Str, SubStr: PChar): PChar; $[功能返回指针子串Substr在指针字符中第一次出现的指针位置说明不存在则返回nil参考function例子:= AnsiStrPos(PChar, PChar);━━━━━━━━━━━━━━━━━━━━━首部function AnsiStrRScan(Str: PChar; Chr: Char): PChar; $[ 功能返回在指针字符串Str搜索字符Chr最后一个出现的地址说明支持多字节字符系统;AnsiStrRScan('', '.') = ''参考function例子:= AnsiStrScan(PChar, '.');━━━━━━━━━━━━━━━━━━━━━首部function AnsiStrScan(Str: PChar; Chr: Char): PChar; $[ 功能返回在指针字符串Str搜索字符Chr第一个出现的地址说明支持多字节字符系统;AnsiStrRScan('', '.') = '.'参考function例子:= AnsiStrScan(PChar, '.');━━━━━━━━━━━━━━━━━━━━━首部function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string; $[功能返回替换后的字符串说明rfReplaceAll为替换全部内容;rfIgnoreCase为忽略大小写参考function ;function ;function例子///////Begin StringReplaceprocedure (Sender: TObject);begin'[]'] :=StringReplace, , , []);'[rfReplaceAll]'] :=StringReplace, , , [rfReplaceAll]);'[rfIgnoreCase]'] :=StringReplace, , , [rfIgnoreCase]);'[rfReplaceAll, rfIgnoreCase]'] :=StringReplace, , , [rfReplaceAll, rfIgnoreCase]);end;///////End StringReplace━━━━━━━━━━━━━━━━━━━━━首部function WrapText(const Line, BreakStr: string; const BreakChars: TSysCharSet; MaxCol: Integer): string; overload; $[ 首部function WrapText(const Line: string; MaxCol: Integer = 45): string; overload; $[功能返回对字符串自动换行说明Result := WrapText(Line, sLineBreak, [' ', '-', #9], MaxCol);参考function ;function例子:= WrapText, ;━━━━━━━━━━━━━━━━━━━━━首部function FindCmdLineSwitch(const Switch: string; constChars: TSysCharSet; IgnoreCase: Boolean): Boolean; overload; $[ 首部function FindCmdLineSwitch(const Switch: string): Boolean; overload; $[首部function FindCmdLineSwitch(const Switch: string; IgnoreCase: Boolean): Boolean; overload; $[功能返回程序命令参数是否找到说明Result := FindCmdLineSwitch(Switch, SwitchChars, True);参考function ;function ;function例子:= FindCmdLineSwitch;━━━━━━━━━━━━━━━━━━━━━首部procedure FreeAndNil(var Obj); $[功能释放对象Obj并赋为空说明如果对象已经释放资源将触发异常参考type例子///////Begin FreeAndNilprocedure (Sender: TObject);varTemp: TObject;beginTemp := ;;ShowMessage(Format('%p', [Pointer(Temp)]));Temp := ;FreeAndNil(Temp);ShowMessage(Format('%p', [Pointer(Temp)]));end;///////End FreeAndNil━━━━━━━━━━━━━━━━━━━━━首部function Supports(const Instance: IInterface; const IID:TGUID; out Intf): Boolean; overload; $[首部function Supports(const Instance: TObject; const IID: TGUID; out Intf): Boolean; overload; $[首部function Supports(const Instance: IInterface; const IID: TGUID): Boolean; overload; $[首部function Supports(const Instance: TObject; const IID: TGUID): Boolean; overload; $[首部function Supports(const AClass: TClass; const IID: TGUID): Boolean; overload; $[功能返回对象是否支持指定的接口说明Result := (IID) <> nil;参考type例子━━━━━━━━━━━━━━━━━━━━━首部function CreateGUID(out Guid: TGUID): HResult; $[功能返回创建全局标识是否成功说明返回S_OK表示成功参考function例子///////Begin CreateGUIDprocedure (Sender: TObject);varvGUID: TGUID;beginCreateGUID(vGUID);:= GUIDT oString(vGUID);end;///////End CreateGUID━━━━━━━━━━━━━━━━━━━━━首部function StringToGUID(const S: string): TGUID; $[功能返回字符串S转换成全局标识说明如果字符串非法将触发异常参考fuction例子:= GUIDT oString(StringT oGUID);━━━━━━━━━━━━━━━━━━━━━首部function GUIDToString(const GUID: TGUID): string; $[功能返回全局标识GUID转换成字符串说明参考fuction例子:= GUIDT oString(StringT oGUID);━━━━━━━━━━━━━━━━━━━━━首部function IsEqualGUID(const guid1, guid2: TGUID): Boolean; $[功能返回两个全局标识是否相同说明function IsEqualGUID; external '' name 'IsEqualGUID';参考例子:= IsEqualGUID(StringToGUID, StringToGUID);━━━━━━━━━━━━━━━━━━━━━首部function LoadPackage(const Name: string): HMODULE; $[功能返回载入包资源说明参考function ;function ;function例子━━━━━━━━━━━━━━━━━━━━━首部procedure UnloadPackage(Module: HMODULE); $[功能取消载入包资源说明参考function ;function例子━━━━━━━━━━━━━━━━━━━━━首部procedure GetPackageInfo(Module: HMODULE; Param: Pointer; var Flags: Integer; InfoProc: TPackageInfoProc); $[ 功能返回包的信息说明参考例子━━━━━━━━━━━━━━━━━━━━━首部function GetPackageDescription(ModuleName: PChar): string; $[功能返回包的描述说明参考function ;function例子━━━━━━━━━━━━━━━━━━━━━首部procedure InitializePackage(Module: HMODULE); $[功能初始化包说明参考function例子━━━━━━━━━━━━━━━━━━━━━首部procedure FinalizePackage(Module: HMODULE); $[功能终止化包说明参考function例子━━━━━━━━━━━━━━━━━━━━━首部procedure RaiseLastOSError; $[功能触发操作系统的最后一个异常说明如果没有出现异常则默认调用Api函数异常参考function例子RaiseLastOSError;━━━━━━━━━━━━━━━━━━━━━首部procedure RaiseLastWin32Error; deprecated; $[功能触发Win32系统的最后一个异常说明如果没有出现异常则默认调用Api函数异常参考function ;例子RaiseLastWin32Error;━━━━━━━━━━━━━━━━━━━━━首部function Win32Check(RetVal: BOOL): BOOL; platform; $[ 功能返回检测调用系统Api函数返回结果说明如果RetVal为False则触发异常参考function例子:= Win32Check;━━━━━━━━━━━━━━━━━━━━━首部procedure AddTerminateProc(TermProc: TTerminateProc); $[ 功能添加一个退出过程到系统中说明执行AddTerminateProc(nil)将导致系统异常参考const例子///////Begin AddT erminateProcfunction NewTerminateProc: Boolean;beginResult := True;ShowMessage('NewTerminateProc');end;procedure (Sender: TObject);beginAddTerminateProc(NewTerminateProc);end;///////End AddTerminateProc━━━━━━━━━━━━━━━━━━━━━首部function CallTerminateProcs: Boolean; $[功能返回调用退出过程是否成功说明不建议调用参考const例子CallTerminateProcs;━━━━━━━━━━━━━━━━━━━━━首部function GDAL: LongWord; $[功能说明参考例子━━━━━━━━━━━━━━━━━━━━━首部procedure RCS; $[说明参考例子━━━━━━━━━━━━━━━━━━━━━首部procedure RPR; $[功能说明参考例子━━━━━━━━━━━━━━━━━━━━━首部function SafeLoadLibrary(const Filename: string; ErrorMode: UINT = SEM_NOOPENFILEERRORBOX): HMODULE; $[功能返回安全方式载入动态连接库资源说明<参见LoadLibrary>参考function例子━━━━━━━━━━━━━━━━━━━━━首部function GetEnvironmentVariable(const Name: string): string; overload; $[功能返回过程环境变量说明配合SetEnvironmentVariable函数使用参考function例子:= GetEnvironmentVariable;///////Begin GetEnvironmentVariableprocedure (Sender: TObject);beginSetEnvironmentVariable(PChar, PChar);:= GetEnvironmentVariable;end;///////End GetEnvironmentVariable━━━━━━━━━━━━━━━━━━━━━首部function InterlockedIncrement(var I: Integer): Integer; $[ 功能说明Kylix函数参考例子━━━━━━━━━━━━━━━━━━━━━首部function InterlockedDecrement(var I: Integer): Integer; $[功能说明Kylix函数参考例子━━━━━━━━━━━━━━━━━━━━━首部function InterlockedExchange(var A: Integer; B: Integer): Integer; $[说明Kylix函数参考例子━━━━━━━━━━━━━━━━━━━━━首部function InterlockedExchangeAdd(var A: Integer; B: Integer): Integer; $[ 功能说明Kylix函数参考例子━━━━━━━━━━━━━━━━━━━━━。

delphi filter的用法

delphi filter的用法

delphi filter的用法Delphi中的过滤器(Filter)是用来筛选或过滤集合中的元素。

可以通过自定义函数或谓词(Predicate)来筛选集合中的元素,从而得到符合特定条件的子集。

可以将过滤器应用于多种不同类型的集合,如数组、列表、集合等。

以下是Delphi中过滤器的一般用法:1. 使用自定义函数:a. 定义一个函数,该函数返回一个布尔值,并接受集合元素作为参数。

b. 使用TArray类或TList类等来存储集合元素。

c. 使用TArray类的Filter方法或TList类的Filter方法,并将自定义的过滤函数传递给过滤器。

d. 过滤方法将返回一个新的集合,其中只包含通过过滤函数的元素。

例如,以下是一个使用自定义函数进行过滤的示例:```pasfunction IsEvenNumber(const AValue: Integer): Boolean;beginResult := (AValue mod 2 = 0);end;procedure FilterArray;varNumbers: TArray<Integer>;FilteredNumbers: TArray<Integer>;beginNumbers := [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];FilteredNumbers := TArray.Filter<Integer>(Numbers, IsEvenNumber);// FilteredNumbers 现在只包含偶数 [2, 4, 6, 8, 10]end;```2. 使用谓词(Predicate):a. 定义一个匿名方法(Anonymous Method)或使用现有的方法作为谓词。

b. 使用TArray.Filter或TList.Filter方法,并将谓词传递给过滤器。

c. 过滤方法将返回一个新的集合,其中只包含通过谓词的元素。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本文包含以下自定义函数:1、Base64编码函数。

2、Base64解码函数。

3、截取汉字子串函数,防止出现半个汉字现象。

4、人民币小写转换为大写函数。

1、Base64编码函数。

//Base64编码函数function Base64Encode(InputData: string): string;//; Var OutputData: StringconstBase64TableLength = 64;Base64Table: string[Base64TableLength] ='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+*'; Pad = '=';vari: integer;CurrentB, PrevB: byte;c: byte;s: char;InputLength: integer;OutputData: string;FilterDecodeInput: Boolean;function ValueToCharacter(value: byte; var character: char): Boolean;//******************************************************************// 将一个在0..Base64TableLength-1区间内的值,转换为与Base64编码相对应// 的字符来表示,如果转换成功则返回True//****************************************************************** beginresult := true;if (value > Base64TableLength - 1) thenresult := falseelsecharacter := Base64Table[value + 1];end;beginFilterDecodeInput := true;OutputData := '';InputLength := Length(InputData);i := 1;if (InputLength = 0) then begin// result := BASE64_OK;Exit;end;repeat// 第一次转换CurrentB := Ord(InputData[i]);i := i + 1;InputLength := InputLength - 1;c := (CurrentB shr 2);if not ValueToCharacter(c, s) then begin// result := BASE64_ERROR;Exit;end;OutputData := OutputData + s;PrevB := CurrentB;// 第二次转换if InputLength = 0 thenCurrentB := 0else beginCurrentB := Ord(InputData[i]);i := i + 1;end;InputLength := InputLength - 1;c := (PrevB and $03) shl 4 + (CurrentB shr 4);//取出XX后4位并将其左移4位与XX右移4位合并成六位if not ValueToCharacter(c, s) then{//检测取得的字符是否在Base64Table内} begin// result := BASE64_ERROR;Exit;end;OutputData := OutputData + s;PrevB := CurrentB;// 第三次转换if InputLength < 0 thens := Padelse beginif InputLength = 0 thenCurrentB := 0else beginCurrentB := Ord(InputData[i]);i := i + 1;end;InputLength := InputLength - 1;c := (PrevB and $0F) shl 2 + (CurrentB shr 6);//取出XX后4位并将其左移2位与XX右移6位合并成六位if not ValueToCharacter(c, s) then{//检测取得的字符是否在Base64Table内} begin// result := BASE64_ERROR;Exit;end;end;OutputData := OutputData + s;// 第四次转换if InputLength < 0 thens := Padelse beginc := (CurrentB and $3F); //取出XX后6位if not ValueToCharacter(c, s) then{//检测取得的字符是否在Base64Table内} begin// result := BASE64_ERROR;Exit;end;end;OutputData := OutputData + s;until InputLength <= 0;result := OutputData;end;2、Base64解码函数。

function Base64Decode(InputData: string): string;constBase64TableLength = 64;Base64Table: string[Base64TableLength] ='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+*'; Pad = '=';vari: integer;InputLength: integer;CurrentB, PrevB: byte;c: byte;s: char;OutputData: string;FilterDecodeInput: Boolean;function CharacterToValue(character: char; var value: byte): Boolean;//****************************************************************** // 转换字符为一在0..Base64TableLength-1区间中的值,如果转换成功则返// 回True(即字符在Base64Table中)//****************************************************************** beginresult := true;value := Pos(character, Base64Table);if value = 0 thenresult := falseelsevalue := value - 1;end;function FilterLine(InputData: string): string;//****************************************************************** // 过滤所有不在Base64Table中的字符,返回值为过滤后的字符//****************************************************************** varF: byte;i: integer;beginresult := '';for i := 1 to Length(InputData) doif CharacterToV alue(InputData[i], F) or (InputData[i] = Pad) thenresult := result + InputData[i];end;beginFilterDecodeInput := true;if (InputData = '') then begin// result := BASE64_OK;Exit;end;OutputData := '';if FilterDecodeInput thenInputData := FilterLine(InputData);InputLength := Length(InputData);if InputLength mod 4 <> 0 then begin// result := BASE64_LENGTH;Exit;end;i := 0;repeat// 第一次转换i := i + 1;s := InputData[i];if not CharacterToValue(s, CurrentB) then begin // result := BASE64_INV ALID;Exit;end;i := i + 1;s := InputData[i];if not CharacterToValue(s, PrevB) then begin// result := BASE64_INV ALID;Exit;end;c := (CurrentB shl 2) + (PrevB shr 4);OutputData := OutputData + Chr(c);// 第二次转换i := i + 1;s := InputData[i];if s = Pad then beginif (i <> InputLength - 1) then begin// result := BASE64_DATALEFT;Exit;endelseif InputData[i + 1] <> Pad then begin// result := BASE64_PADDING;Exit;end;endelse beginif not CharacterToValue(s, CurrentB) then begin // result := BASE64_INV ALID;Exit;end;c := (PrevB shl 4) + (CurrentB shr 2);OutputData := OutputData + Chr(c);end;// 第三次转换i := i + 1;s := InputData[i];if s = Pad then beginif (i <> InputLength) then begin// result := BASE64_DATALEFT;Exit;end;endelse beginif not CharacterToValue(s, PrevB) then begin// result := BASE64_INV ALID;Exit;end;c := (CurrentB shl 6) + (PrevB);OutputData := OutputData + Chr(c);end;until (i >= InputLength);result := OutputData;end;3、截取汉字子串函数,防止出现半个汉字现象。

相关文档
最新文档