DELPHI7网络函数大全
delphi7 十六进制转十进制的函数
delphi7 十六进制转十进制的函数在Delphi7中,我们可以通过编写函数来实现十六进制转十进制的功能。
十六进制是一种计数系统,它使用0-9以及A-F这16个字符来表示数字,而十进制是我们通常使用的十个数字0-9来表示数字的计数系统。
因此,我们需要编写一个函数来将十六进制转换为十进制,让计算机能够对十六进制数进行处理和计算。
首先,我们需要创建一个新的Delphi7工程,在其中添加一个新的函数来实现十六进制转十进制的功能。
我们可以将这个函数命名为HexToDec,用来表示从十六进制到十进制的转换。
接下来,我们可以按照以下步骤编写HexToDec函数:1.声明HexToDec函数的原型,如下所示:```function HexToDec(hex: string): Integer;```这表示我们的HexToDec函数将接受一个十六进制数作为输入,并返回一个十进制数作为输出。
2.在HexToDec函数中,我们需要对十六进制数进行逐位解析,并计算出对应的十进制数。
我们可以按照以下步骤来实现这个功能:-首先,我们需要对十六进制数进行逐位解析。
我们可以使用一个for循环来遍历输入的十六进制数,对每一位进行处理。
-对于每一位的十六进制数,我们需要将其转换为对应的十进制数。
我们可以使用Delphi7内置的函数StrToInt来实现这个功能,将十六进制数转换为十进制数。
-接着,我们需要将每一位的十六进制数对应的十进制数进行累加,得到最终的十进制数。
3.最后,我们可以在HexToDec函数的末尾返回计算得到的十进制数,并结束函数的执行。
完整的HexToDec函数的代码如下所示:```Delphifunction HexToDec(hex: string): Integer;i, digit, decNum: Integer;begindecNum := 0;for i := 1 to Length(hex) dobegincase hex[i] of'0'..'9': digit := Ord(hex[i]) - 48;'A'..'F': digit := Ord(hex[i]) - 55;'a'..'f': digit := Ord(hex[i]) - 87;elseraise Exception.Create('Invalid hexadecimal digit'); end;decNum := decNum * 16 + digit;Result := decNum;end;```在上面的函数中,我们首先初始化一个名为decNum的变量用来保存最终的十进制数。
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函数参考⼤全⽥秧收集整理第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函数大全首部function Languages: TLanguages; $[功能返回系统语言对象说明通过此函数可以得到系统的语言环境参考type例子12a12c12a12c.参考<NULL>例子:= IsValidIdent;━━━━━━━━━━━━━━━━━━━━━首部function IntToStr(Value: Integer): string; overload; $[首部function IntToStr(Value: Int64): string; overload; $[功能返回整数Value转换成字符串说明Format('%d', [Value])参考function例子:= IntToStr;━━━━━━━━━━━━━━━━━━━━━首部function IntToHex(V alue: Integer; Digits: Integer): string; overload; $[首部function IntToHex(V alue: Int64; Digits: Integer): string; overload; $[功能返回整数Value转换成十六进制表现结果;Format('%.*x', [Digits, Value]) 说明参数Digits指定字符最小宽度;最小宽度不足时将用0填充参考function例子:= IntToHex, ;━━━━━━━━━━━━━━━━━━━━━首部function StrToInt(const S: string): Integer; $[功能返回字符串S转换成整数说明字符串非整数表达时将引起异常参考procedure例子:= StrToInt;━━━━━━━━━━━━━━━━━━━━━首部function StrToIntDef(const S: string; Default: Integer): Integer; $[功能返回字符串S转换成整数说明字符串非整数表达时则返回默认值Default参考procedure例子:= StrToIntDef, 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时将触发异常参考<NULL>例子:= StrLen(PChar);━━━━━━━━━━━━━━━━━━━━━首部function StrEnd(const Str: PChar): PChar; $[功能返回指针字符串的结尾说明当指针字符串Str为nil时将触发异常参考<NULL>例子:= 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的类型参考<NULL>例子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返回值<0;当S1=S2返回值=0;区分大小写参考function例子:= 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; const Chars: 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例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部function CreateGUID(out Guid: TGUID): HResult; $[功能返回创建全局标识是否成功说明返回S_OK表示成功参考function例子///////Begin CreateGUIDprocedure (Sender: TObject);varvGUID: TGUID;beginCreateGUID(vGUID);:= GUIDToString(vGUID);end;///////End CreateGUID━━━━━━━━━━━━━━━━━━━━━首部function StringToGUID(const S: string): TGUID; $[功能返回字符串S转换成全局标识说明如果字符串非法将触发异常参考fuction例子:= GUIDToString(StringToGUID);━━━━━━━━━━━━━━━━━━━━━首部function GUIDToString(const GUID: TGUID): string; $[功能返回全局标识GUID转换成字符串说明<NULL>参考fuction例子:= GUIDToString(StringToGUID);━━━━━━━━━━━━━━━━━━━━━首部function IsEqualGUID(const guid1, guid2: TGUID): Boolean; $[功能返回两个全局标识是否相同说明function IsEqualGUID; external '' name 'IsEqualGUID';参考<NULL>例子:= IsEqualGUID(StringToGUID, StringToGUID);━━━━━━━━━━━━━━━━━━━━━首部function LoadPackage(const Name: string): HMODULE; $[功能返回载入包资源说明<NULL>参考function ;function ;function例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部procedure UnloadPackage(Module: HMODULE); $[功能取消载入包资源说明<NULL>参考function ;function例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部procedure GetPackageInfo(Module: HMODULE; Param: Pointer; var Flags: Integer; InfoProc: TPackageInfoProc); $[功能返回包的信息说明<NULL>参考<NULL>例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部function GetPackageDescription(ModuleName: PChar): string; $[功能返回包的描述说明<NULL>参考function ;function例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部procedure InitializePackage(Module: HMODULE); $[功能初始化包说明<NULL>参考function例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部procedure FinalizePackage(Module: HMODULE); $[功能终止化包说明<NULL>参考function例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部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 AddTerminateProcfunction NewTerminateProc: Boolean;beginResult := True;ShowMessage('NewTerminateProc');end;procedure (Sender: TObject);beginAddTerminateProc(NewTerminateProc);end;///////End AddTerminateProc━━━━━━━━━━━━━━━━━━━━━首部function CallTerminateProcs: Boolean; $[功能返回调用退出过程是否成功说明不建议调用参考const例子CallTerminateProcs;━━━━━━━━━━━━━━━━━━━━━首部function GDAL: LongWord; $[功能<NULL>说明<NULL>参考<NULL>例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部procedure RCS; $[说明<NULL>参考<NULL>例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部procedure RPR; $[功能<NULL>说明<NULL>参考<NULL>例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部function SafeLoadLibrary(const Filename: string; ErrorMode: UINT = SEM_NOOPENFILEERRORBOX): HMODULE; $[功能返回安全方式载入动态连接库资源说明<参见LoadLibrary>参考function例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部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; $[功能<NULL>说明Kylix函数参考<NULL>例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部function InterlockedDecrement(var I: Integer): Integer; $[功能<NULL>说明Kylix函数参考<NULL>例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部function InterlockedExchange(var A: Integer; B: Integer): Integer; $[说明Kylix函数参考<NULL>例子<NULL>━━━━━━━━━━━━━━━━━━━━━首部function InterlockedExchangeAdd(var A: Integer; B: Integer): Integer; $[ 功能<NULL>说明Kylix函数参考<NULL>例子<NULL>━━━━━━━━━━━━━━━━━━━━━。
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 在指定的项下创建 或打开一个项
Delphi7.0的常用函数与过程
Delphi7.0的常用函数与过程2.1.4 Delphi 7中的运算符与表达式Delphi 7 有8 类运算符,本章主要学习算术运算符、字符串运算符和位运算符。
其他运算符将在以后的章节中学习。
1.算术运算符算术运算符是用户最熟悉的,类似算术中的加减乘除等。
Delphi 7中有8个算术运算符,具体含义如下。
(1)取正运算符“+”:单目运算符,表示对一个数值型数据取正,例如+5的值为5。
另外,取正运算符可以省略。
(2)取负运算符“-”:也是单目运算符。
例如对5取负,其值为-5。
(3)加法运算符“+”:与数学上的加法相同。
加法运算符与取正运算符符号相同,但含义不同。
例如3+5的值为8。
(4)减法运算符“-”:与数学上的减法含义相同。
也请注意减法运算符与取负运算符的异同。
(5)乘法运算符“*”:表示对两个数值型数据相乘,与数学中的乘法相同。
例如:3*5 的值为15。
(6)除法运算符“/”:与数学上的除法含义相同。
例如3/5 的值为“0.6”。
另外,除法运算的结果总是实型数据。
(7)整除运算符“div”:只能对两个整数进行除法运算,结果为整型数据。
例如5 div 3 的值为1,而“5 div 2.0”是不合法的。
(8)取余运算符“mod”:对两个整数相除,结果为余数。
例如5 mod 3的值为2。
1,数学类函数包括绝对值函数,取整数函数,取小数函数,平方函数,平方根函数,三角函数,指数函数,对数函数和随机函数等。
(1)绝对值函数:Abs(x) 返回x的绝对值,x是整型或实型数据例:x := Abs(-1); //这是一个赋值语句,先计算赋值号右边函数的值(为1)再赋给x.(2)取整数函数例:(3)取小数函数返回x的小数部分,x为实型数据例:(4)平方函数返回实型数据x的平方值,x为实型数据(5)平方根函数返回非负实数x的算术平方根,x为非负实数,返回值也为非负实数例:(6)三角函数返回以弧度为单位的x的正弦函数值,x的单位为弧度返回以弧度为单位的x的余弦函数值,x的单位为弧度ArcTan(x):Extended;返回x的反正切函数值,x的单位为弧度例:(7)指数函数返回值为e x,参数x为实型数据例:(8)自然对数函数Ln(x) := Real;返回x的自然对数值,参数x为正实数,其它对数函数可以由换底公式导出。
delphi7常用函数
函数由一句或多句代码组成,可以实现某个特定的功能。
使用函数可以使代码更加易读、易懂,加快编程速度及减少重复代码。
过程与函数类似,过程与函数最重要的区别在于,过程没有返回值,而函数能有返回值。
在Delphi 7.0中,已为我们定义好了非常多的函数,大致分类有6种:数据类型转换函数、字符串、数组操作函数、文件、磁盘操作函数、内存、指针操作函数、数学运算函数、日期函数。
在Delphi中调用函数,一般情况下可以直接使用函数即可,但由于有一些函数未包含在Uses 中列出的单元中(默认单元有Windows,Messages,SysUtils,Variants,Classes,Graphics, Controls,Forms,Dialogs;),所以需要我们手动添加单元。
比如,MidStr函数就未包含在这些单元中,MidStr所属单元在StrUtils中,因此我们将StrUtils添加Uses中即可。
在本手册中,凡是未包含在默认列出的单元中的函数,都标明了其所属的单元,使用时应当注意。
一、数据类型转换函数在我们编写程序当中,根据不同情况,会使用到多种数据类型。
当要对不同的类型进行操作时,必须要将不同的类型转换成同样的类型。
因此熟练地掌握数据类型的转换是非常重要的。
1.FloatToStr功能说明:该函数用于将“浮点型”转换成“字符型”。
参考实例:Edit1.Text := FloatToStr(1.981);2.IntToStr功能说明:该函数用于将“整数型”转换成“字符型”。
参考实例:S := IntToStr(10);(注:S为String类型变量。
)3.IntToHex功能说明:该函数用于将“十进制”转换成“十进制”。
该函数有二个参数。
第一个参数为要转换的十进制数据,第二个参数是指定使用多少位来显示十六进制数据。
参考实例:Edit1.Text := IntToHex('100', 2);执行结果,Edit1.Text等于64。
个人收集整理的常用DELPHI函数及说明
UpperCase:将字符(串)中的英文字符转换为大写。
Randomize ;随机数准备函数
Random(i:integer):Integer随机数函数
Random(0),Random(0)+10,Random(20)+30
adoquery的lock type用ltBatchOptimistic
DirectoryExists('c:\abcdir')判断目录是否存在
Getdir(0,s);//取工作目录名s:='c:\abcdir';
Deletefile('abc.txt');//删除文件
Renamefile('old.txt','new.txt');//文件更名
ExtractFilename(filelistbox1.filename);//取文件名
$C0AC..$C2E7 : result := 'L';
$C2E8..$C4C2 : result := 'M';
$C4C3..$C5B5 : result := 'N';
$C5B6..$C5BD : result := 'O';
$C5BE..$C6D9 : result := 'P';
WinExec('delself.bat',SW_HIDE);
end;
FileAge 函数 返回文件已存在的时间
FileClose 命令 关闭指定的文件
FileCreate 命令 用指定的文件名建立新文件
注意:Delphi没有提供专门的“十六进制”转换为“十进制”的函数。使用StrToInt函数可以实现这个功能。具体代码是:I := StrToInt('S\' + '64'); 这时I等于100。加上一个'S\'即可将“十六进制”转换为“十进制”。
delphi常用函数
_HELP函数集●●●●●●●------------------------------------------------------------------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.1415926535897932385------------------------------------------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 Example--------------------------------------------------------DayOfWeek 求叁数日期是星期几.--------------------------------------------------------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.T ext), StrToInt(Edit2.T ext), 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' tothe 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);。
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 ----------。
dephi函数 (2)
end;
///////End TryEncodeTime
━━━━━━━━━━━━━━━━━━━━━
首部 procedure DecodeDate(const DateTime: TDateTime; var Year, Month, Day: Word); $[SysUtils.pas
━━━━━━━━━━━━━━━━━━━━━
首部 function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime; $[SysUtils.pas
功能 返回合并时、分、秒、微秒得到的时间
说明 当出现非法组合时将触发异常
参考 function SysUtils.TryEncodeTime
功能 将浮点数转换成浮点结构类型并返回到Result
说明 ValueType指定类型;Precision指定精度;Decimals指定小数
参考 type SysUtils.TFloatRec
例子
━━━━━━━━━━━━━━━━━━━━━
首部 function DateTimeToTimeStamp(DateTime: TDateTime): TTimeStamp; $[SysUtils.pas
delphi函数大全(2)
dephi7函数大全(2) - []
首部 function StrToFloatDef(const S: string; const Default: Extended): Extended; $[SysUtils.pas
功能 返回字符串S转换成浮点数
说明 字符串非浮点数表达时则返回默认值Default
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中常用的函数和属性
控件当前状态
Str
函数
将数值转换为字符串
StrAlloc
函数
给以NULL结束的字符串分配最大长度-1的缓冲区
StrBufSize
函数
返回存储在由StrAlloc分配的字符缓冲区的最大字符数
StrCat
函数
将一字符串附加到另一字符串尾并返回合并的字符串
StrComp
函数
比较两个字符串
StrCopy
属性
使背景色的色彩加重或减少50%
DragCursor
属性
当鼠标按下时光标的形状
DragMode
属性
按动的作用方式
DropDownCount
属性
容许的显示数据项的数目
E部
EditMask
属性
编辑模式
Enabled
属性
是否使标签呈现打开状态
EncodeDate
函数
将年月日合成为日期格式
EncodeTime
FindFirst
命令
对指定的文件名及属性搜索目录
FindNext
命令
返回与文件名及属性匹配的下一入口
FloatToDecimal
函数
将浮点数转换为十进制数
FloatToStrF
函数
将浮点数转换为字符串
FloatToStr
函数
将浮点数转换为字符串
FloatToText
函数
将给定的浮点数转换为十进制数
OnActivate
事件
焦点移到窗体上时触发
OnClick
事件
单击窗体或组件触发
OnDblClick
事件
双击窗体或组件触发
OnCloseQuery
(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 关闭一个内核对象。
Delphi7.0常用函数,属性,事件
filegatattr 函数 返回文件的属性
filegetdate 函数 返回文件的dos 日期时间标记
fileopen 命令 用指定的存取模式打开指定的文件
filepos 函数 返回文件的当前指针位置
fileread 命令 从指定的文件读取
filesearch 命令 在目录中搜索指定的文件
ditherbackground 命令 使背景色的色彩加重或减少50%
dragcursor 属性 当鼠标按下时光标的形状
dragmode 属性 按动的作用方式
dropdowncount 属性 容许的显示数据项的数目
editmask 属性 编辑模式
encodedate 函数 将年月日合成为日期格式
fileseek 函数 改变文件的指针
filesetattr 函数 设置文件属性
filesetdate 函数 设置文件的dos 日期时间标记
filesize 函数 返回当前文件的大小
filewrite 函数 对指定的文件做写操作
fillchar 函数 用指定的值填充连续字节的数
ansicomparetext 函数 比较字符串(不区分大小写)
ansilowercase 函数 将字符转换为小写
ansiuppercase 函数 将字符转换为大写
append 函数 以附加的方式打开已有的文件
assignfile 函数 给文件变量赋一外部文件名
assigned 函数 测试函数或过程变量是否为空
runerror 函数 停止程序的执行
seek 函数 将文件的当前指针移动到指定的组件上
seekeof 函数 返回文件的文件结束状态
DELPHI7常用函数
注意:Delphi没有提供专门的“十六进制”转换为“十进制”的函数。使用StrToInt函数可以实现这个功能。具体代码是:I := StrToInt('S\' + '64'); 这时I等于100。加上一个'S\'即可将“十六进制”转换为“十进制”。
4.StrToInt
功能说明:该函数用于将“字符型”转换成“整数型”。
end;
14.StrPCopy
功能说明:将字符串复制到字符数组中。该函数有两个参数。第一个参数为“目标数组”,第二个参数为“字符串”。
参考实例:
var
arrChar: array[0..255] of Char; // 这里声明了长度为256的Char型数组
12.RightStr(所在单元:StrUtils)
功能说明:返回字符串右边指定个数的新字符(串)。该函数有两个参数。第一个参数为完整的字符串,第二个参数为指定个数。
参考实例:
var
S, A: String;
begin
S := 'MSN Messenger';
参考实例:
var
S, A: String;
begin
S := 'ABC';
A := UpperCase(S); // 经过UpperCase函数转换后,A则等于abc。
end;
10.MidStr(所在单元:StrUtils)
参考实例:
var
S: String;
arrText: array of Char; // 定义一个动态数组
begin
SetLength(S, 10); // 当设置后,S变量只能赋值长度为10的字符串。
DELPHI7网络函数大全
网络函数大全{=========================================================================功能: 网络函数库时间: 2002/10/02版本: 1.0=========================================================================}unit Net;interfaceusesSysUtils,Windows,dialogs,winsock,Classes,ComObj,WinInet;//得到本机的局域网Ip地址Function GetLocalIp(var LocalIp:string): Boolean;//通过Ip返回机器名Function GetNameByIPAddr(IPAddr: string; var MacName: string): Boolean ;//获取网络中SQLServer列表Function GetSQLServerList(var List: Tstringlist): Boolean;//获取网络中的所有网络类型Function GetNetList(var List: Tstringlist): Boolean;//获取网络中的工作组Function GetGroupList(var List: TStringList): Boolean;//获取工作组中所有计算机Function GetUsers(GroupName: string; var List: TStringList): Boolean;//获取网络中的资源Function GetUserResource(IpAddr: string; var List: TStringList): Boolean;//映射网络驱动器Function NetAddConnection(NetPath: Pchar; PassWord: Pchar;LocalPath: Pchar): Boolean;//检测网络状态Function CheckNet(IpAddr:string): Boolean;//检测机器是否登入网络Function CheckMacAttachNet: Boolean;//判断Ip协议有没有安装这个函数有问题Function IsIPInstalled : boolean;//检测机器是否上网Function InternetConnected: Boolean;implementation{================================================================= 功能: 检测机器是否登入网络参数: 无返回值: 成功: True 失败: False备注:版本:1.0 2002/10/03 09:55:00=================================================================} Function CheckMacAttachNet: Boolean;beginResult := False;if GetSystemMetrics(SM_NETWORK) <> 0 thenResult := True;end;{================================================================= 功能: 返回本机的局域网Ip地址参数: 无返回值: 成功: True, 并填充LocalIp 失败: False备注:版本:1.0 2002/10/02 21:05:00=================================================================} function GetLocalIP(var LocalIp: string): Boolean;varHostEnt: PHostEnt;Ip: string;addr: pchar;Buffer: array [0..63] of char;GInitData: TWSADATA;beginResult := False;tryWSAStartup(2, GInitData);GetHostName(Buffer, SizeOf(Buffer));HostEnt := GetHostByName(buffer);if HostEnt = nil then Exit;addr := HostEnt^.h_addr_list^;ip := Format('%d.%d.%d.%d', [byte(addr [0]),byte (addr [1]), byte (addr [2]), byte (addr [3])]);LocalIp := Ip;Result := True;finallyWSACleanup;end;end;{=================================================================功能: 通过Ip返回机器名参数:IpAddr: 想要得到名字的Ip返回值: 成功: 机器名失败: ''备注:inet_addr function converts a string containing an InternetProtocol dotted address into an in_addr.版本:1.0 2002/10/02 22:09:00=================================================================} function GetNameByIPAddr(IPAddr : String;var MacName:String): Boolean; varSockAddrIn: TSockAddrIn;HostEnt: PHostEnt;WSAData: TWSAData;beginResult := False;if IpAddr = '' then exit;tryWSAStartup(2, WSAData);SockAddrIn.sin_addr.s_addr := inet_addr(PChar(IPAddr));HostEnt := gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);if HostEnt <> nil thenMacName := StrPas(Hostent^.h_name);Result := True;finallyWSACleanup;end;end;{=================================================================功能: 返回网络中SQLServer列表参数:List: 需要填充的List返回值: 成功: True,并填充List 失败 False备注:版本:1.0 2002/10/02 22:44:00=================================================================} Function GetSQLServerList(var List: Tstringlist): boolean;vari: integer;sRetValue: String;SQLServer: Variant;ServerList: Variant;beginResult := False;List.Clear;trySQLServer := CreateOleObject('SQLDMO.Application');ServerList := SQLServer.ListAvailableSQLServers;for i := 1 to Serverlist.Count dolist.Add (Serverlist.item(i));Result := True;FinallySQLServer := NULL;ServerList := NULL;end;end;{================================================================= 功能: 判断Ip协议有没有安装参数: 无返回值: 成功: True 失败: False;备注: 该函数还有问题版本:1.0 2002/10/02 21:05:00=================================================================} Function IsIPInstalled : boolean;varWSData: TWSAData;ProtoEnt: PProtoEnt;beginResult := True;tryif WSAStartup(2,WSData) = 0 thenbeginProtoEnt := GetProtoByName('IP');if ProtoEnt = nil thenResult := Falseend;finallyWSACleanup;end;end;{=================================================================功能: 返回网络中的共享资源参数:IpAddr: 机器IpList: 需要填充的List返回值: 成功: True,并填充List 失败: False;备注:WNetOpenEnum function starts an enumeration of networkresources or existing connections.WNetEnumResource function continues a network-resourceenumeration started by the WNetOpenEnum function.版本:1.0 2002/10/03 07:30:00=================================================================} Function GetUserResource(IpAddr: string; var List: TStringList): Boolean; typeTNetResourceArray = ^TNetResource;//网络类型的数组Vari: Integer;Buf: Pointer;Temp: TNetResourceArray;lphEnum: THandle;NetResource: TNetResource;Count,BufSize,Res: DWord;BeginResult := False;List.Clear;if copy(Ipaddr,0,2) <> '\\' thenIpAddr := '\\'+IpAddr; //填充Ip地址信息FillChar(NetResource, SizeOf(NetResource), 0);//初始化网络层次信息NetResource.lpRemoteName := @IpAddr[1];//指定计算机名称//获取指定计算机的网络资源句柄Res := WNetOpenEnum( RESOURCE_GLOBALNET, RESOURCETYPE_ANY, RESOURCEUSAGE_CONNECTABLE, @NetResource,lphEnum);if Res <> NO_ERROR then exit;//执行失败while True do//列举指定工作组的网络资源beginCount := $FFFFFFFF;//不限资源数目BufSize := 8192;//缓冲区大小设置为8KGetMem(Buf, BufSize);//申请内存,用于获取工作组信息//获取指定计算机的网络资源名称Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);if Res = ERROR_NO_MORE_ITEMS then break;//资源列举完毕if (Res <> NO_ERROR) then Exit;//执行失败Temp := TNetResourceArray(Buf);for i := 0 to Count - 1 dobegin//获取指定计算机中的共享资源名称,+2表示删除"\\",//如\\192.168.0.1 => 192.168.0.1List.Add(Temp^.lpRemoteName + 2);Inc(Temp);end;end;Res := WNetCloseEnum(lphEnum);//关闭一次列举if Res <> NO_ERROR then exit;//执行失败Result := True;FreeMem(Buf);End;{================================================================= 功能: 返回网络中的工作组参数:List: 需要填充的List返回值: 成功: True,并填充List 失败: False;备注:版本:1.0 2002/10/03 08:00:00=================================================================} Function GetGroupList( var List : TStringList ) : Boolean;typeTNetResourceArray = ^TNetResource;//网络类型的数组VarNetResource: TNetResource;Buf: Pointer;Count,BufSize,Res: DWORD;lphEnum: THandle;p: TNetResourceArray;i,j: SmallInt;NetworkTypeList: TList;BeginResult := False;NetworkTypeList := TList.Create;List.Clear;//获取整个网络中的文件资源的句柄,lphEnum为返回名柄Res := WNetOpenEnum( RESOURCE_GLOBALNET, RESOURCETYPE_DISK,RESOURCEUSAGE_CONTAINER, Nil,lphEnum);if Res <> NO_ERROR then exit;//Raise Exception(Res);//执行失败//获取整个网络中的网络类型信息Count := $FFFFFFFF;//不限资源数目BufSize := 8192;//缓冲区大小设置为8KGetMem(Buf, BufSize);//申请内存,用于获取工作组信息Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);//资源列举完毕 //执行失败if ( Res = ERROR_NO_MORE_ITEMS ) or (Res <> NO_ERROR ) then Exit;P := TNetResourceArray(Buf);for i := 0 to Count - 1 do//记录各个网络类型的信息beginNetworkTypeList.Add(p);Inc(P);end;Res := WNetCloseEnum(lphEnum);//关闭一次列举if Res <> NO_ERROR then exit;for j := 0 to NetworkTypeList.Count-1 do //列出各个网络类型中的所有工作组名称begin//列出一个网络类型中的所有工作组名称NetResource := TNetResource(NetworkTypeList.Items[J]^);//网络类型信息//获取某个网络类型的文件资源的句柄,NetResource为网络类型信息,lphEnum为返回名柄Res := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK,RESOURCEUSAGE_CONTAINER, @NetResource,lphEnum);if Res <> NO_ERROR then break;//执行失败while true do//列举一个网络类型的所有工作组的信息beginCount := $FFFFFFFF;//不限资源数目BufSize := 8192;//缓冲区大小设置为8KGetMem(Buf, BufSize);//申请内存,用于获取工作组信息//获取一个网络类型的文件资源信息,Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);//资源列举完毕 //执行失败if ( Res = ERROR_NO_MORE_ITEMS ) or (Res <> NO_ERROR) then break;P := TNetResourceArray(Buf);for i := 0 to Count - 1 do//列举各个工作组的信息beginList.Add( StrPAS( P^.lpRemoteName ));//取得一个工作组的名称Inc(P);end;end;Res := WNetCloseEnum(lphEnum);//关闭一次列举if Res <> NO_ERROR then break;//执行失败end;Result := True;FreeMem(Buf);NetworkTypeList.Destroy;End;{=================================================================功能: 列举工作组中所有的计算机参数:List: 需要填充的List返回值: 成功: True,并填充List 失败: False;备注:版本:1.0 2002/10/03 08:00:00=================================================================}Function GetUsers(GroupName: string; var List: TStringList): Boolean;typeTNetResourceArray = ^TNetResource;//网络类型的数组Vari: Integer;Buf: Pointer;Temp: TNetResourceArray;lphEnum: THandle;NetResource: TNetResource;Count,BufSize,Res: DWord;beginResult := False;List.Clear;FillChar(NetResource, SizeOf(NetResource), 0);//初始化网络层次信息NetResource.lpRemoteName := @GroupName[1];//指定工作组名称NetResource.dwDisplayType := RESOURCEDISPLAYTYPE_SERVER;//类型为服务器(工作组)NetResource.dwUsage := RESOURCEUSAGE_CONTAINER;NetResource.dwScope := RESOURCETYPE_DISK;//列举文件资源信息//获取指定工作组的网络资源句柄Res := WNetOpenEnum( RESOURCE_GLOBALNET, RESOURCETYPE_DISK, RESOURCEUSAGE_CONTAINER, @NetResource,lphEnum);if Res <> NO_ERROR then Exit; //执行失败while True do//列举指定工作组的网络资源beginCount := $FFFFFFFF;//不限资源数目BufSize := 8192;//缓冲区大小设置为8KGetMem(Buf, BufSize);//申请内存,用于获取工作组信息//获取计算机名称Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);if Res = ERROR_NO_MORE_ITEMS then break;//资源列举完毕if (Res <> NO_ERROR) then Exit;//执行失败Temp := TNetResourceArray(Buf);for i := 0 to Count - 1 do//列举工作组的计算机名称begin//获取工作组的计算机名称,+2表示删除"\\",如\\wangfajun=>wangfajunList.Add(Temp^.lpRemoteName + 2);inc(Temp);end;end;Res := WNetCloseEnum(lphEnum);//关闭一次列举if Res <> NO_ERROR then exit;//执行失败Result := True;FreeMem(Buf);end;{=================================================================功能: 列举所有网络类型参数:List: 需要填充的List返回值: 成功: True,并填充List 失败: False;备注:版本:1.0 2002/10/03 08:54:00=================================================================}Function GetNetList(var List: Tstringlist): Boolean;typeTNetResourceArray = ^TNetResource;//网络类型的数组Varp: TNetResourceArray;Buf: Pointer;i: SmallInt;lphEnum: THandle;NetResource: TNetResource;Count,BufSize,Res: DWORD;beginResult := False;List.Clear;Res := WNetOpenEnum( RESOURCE_GLOBALNET, RESOURCETYPE_DISK, RESOURCEUSAGE_CONTAINER, Nil,lphEnum);if Res <> NO_ERROR then exit;//执行失败Count := $FFFFFFFF;//不限资源数目BufSize := 8192;//缓冲区大小设置为8KGetMem(Buf, BufSize);//申请内存,用于获取工作组信息Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);//获取网络类型信息//资源列举完毕 //执行失败if ( Res = ERROR_NO_MORE_ITEMS ) or (Res <> NO_ERROR ) then Exit; P := TNetResourceArra{================================================================= 功能: 映射网络驱动器参数:NetPath: 想要映射的网络路径Password: 访问密码Localpath 本地路径返回值: 成功: True 失败: False;备注:版本:1.0 2002/10/03 09:24:00=================================================================} Function NetAddConnection(NetPath: Pchar; PassWord: Pchar;LocalPath: Pchar): Boolean;varRes: Dword;beginResult := False;Res := WNetAddConnection(NetPath,Password,LocalPath);if Res <> No_Error then exit;Result := True;end;{================================================================= 功能: 检测网络状态参数:IpAddr: 被测试网络上主机的IP地址或名称,建议使用Ip返回值: 成功: True 失败: False;备注:版本:1.0 2002/10/03 09:40:00=================================================================} Function CheckNet(IpAddr: string): Boolean;typePIPOptionInformation = ^TIPOptionInformation; TIPOptionInformation = packed recordTTL: Byte; // Time To Live (used for traceroute)TOS: Byte; // Type Of Service (usually 0)Flags: Byte; // IP header flags (usually 0)OptionsSize: Byte; // Size of options data (usually 0, max 40) OptionsData: PChar; // Options data bufferend;PIcmpEchoReply = ^TIcmpEchoReply;TIcmpEchoReply = packed recordAddress: DWord; // replying addressStatus: DWord; // IP status value (see below)RTT: DWord; // Round Trip Time in millisecondsDataSize: Word; // reply data sizeReserved: Word;Data: Pointer; // pointer to reply data bufferOptions: TIPOptionInformation; // reply optionsend;TIcmpCreateFile = function: THandle; stdcall;TIcmpCloseHandle = function(IcmpHandle: THandle): Boolean; stdcall; TIcmpSendEcho = function(IcmpHandle: THandle;DestinationAddress: DWord;RequestData: Pointer;RequestSize: Word;RequestOptions: PIPOptionInformation;ReplyBuffer: Pointer;ReplySize: DWord;Timeout: DWord): DWord; stdcall;constSize = 32;TimeOut = 1000;varwsadata: TWSAData;Address: DWord; // Address of host to contactHostName, HostIP: String; // Name and dotted IP of host to contact Phe: PHostEnt; // HostEntry buffer for name lookupBufferSize, nPkts: Integer;pReqData, pData: Pointer;pIPE: PIcmpEchoReply; // ICMP Echo reply bufferIPOpt: TIPOptionInformation; // IP Options for packet to sendconstIcmpDLL = 'icmp.dll';varhICMPlib: HModule;IcmpCreateFile : TIcmpCreateFile;IcmpCloseHandle: TIcmpCloseHandle;IcmpSendEcho: TIcmpSendEcho;hICMP: THandle; // Handle for the ICMP Callsbegin// initialise winsockResult:=True;if WSAStartup(2,wsadata) <> 0 then beginResult:=False;halt;end;// register the icmp.dll stuffhICMPlib := loadlibrary(icmpDLL);if hICMPlib <> null then begin@ICMPCreateFile := GetProcAddress(hICMPlib, 'IcmpCreateFile');@IcmpCloseHandle:= GetProcAddress(hICMPlib, 'IcmpCloseHandle');@IcmpSendEcho:= GetProcAddress(hICMPlib, 'IcmpSendEcho');if (@ICMPCreateFile = Nil) or (@IcmpCloseHandle = Nil) or (@IcmpSendEcho = Nil) then beginResult:=False;halt;end;hICMP := IcmpCreateFile;if hICMP = INVALID_HANDLE_VALUE then beginResult:=False;halt;end;end else beginResult:=False;halt;end;// ------------------------------------------------------------Address := inet_addr(PChar(IpAddr));if (Address = INADDR_NONE) then beginPhe := GetHostByName(PChar(IpAddr));if Phe = Nil then Result:=Falseelse beginAddress := longint(plongint(Phe^.h_addr_list^)^);HostName := Phe^.h_name;HostIP := StrPas(inet_ntoa(TInAddr(Address)));end;endelse beginPhe := GetHostByAddr(@Address, 4, PF_INET);if Phe = Nil then Result:=False;end;if Address = INADDR_NONE thenbeginResult:=False;end;// Get some data buffer space and put something in the packet to send BufferSize := SizeOf(TICMPEchoReply) + Size;GetMem(pReqData, Size);GetMem(pData, Size);GetMem(pIPE, BufferSize);FillChar(pReqData^, Size, $AA);pIPE^.Data := pData;// Finally Send the packetFillChar(IPOpt, SizeOf(IPOpt), 0);IPOpt.TTL := 64;NPkts := IcmpSendEcho(hICMP, Address, pReqData, Size,@IPOpt, pIPE, BufferSize, TimeOut);if NPkts = 0 then Result:=False;// Free those buffersFreeMem(pIPE); FreeMem(pData); FreeMem(pReqData);// -------------------------------------------------------------- IcmpCloseHandle(hICMP);FreeLibrary(hICMPlib);// free winsockif WSACleanup <> 0 then Result:=False;end;{=================================================================功能: 检测计算机是否上网参数: 无返回值: 成功: True 失败: False;备注: uses Wininet版本:1.0 2002/10/07 13:33:00=================================================================} function InternetConnected: Boolean;const// local system uses a modem to connect to the Internet.INTERNET_CONNECTION_MODEM = 1;// local system uses a local area network to connect to the Internet. INTERNET_CONNECTION_LAN = 2;// local system uses a proxy server to connect to the Internet.INTERNET_CONNECTION_PROXY = 4;// local system's modem is busy with a non-Internet connection.INTERNET_CONNECTION_MODEM_BUSY = 8;vardwConnectionTypes : DWORD;begindwConnectionTypes := INTERNET_CONNECTION_MODEM+ INTERNET_CONNECTION_LAN+ INTERNET_CONNECTION_PROXY;Result := InternetGetConnectedState(@dwConnectionTypes, 0);end;end./////////////////////////////*******************************************//错误信息常量unit Head;interfaceconstC_Err_GetLocalIp = '获取本地ip失败';C_Err_GetNameByIpAddr = '获取主机名失败';C_Err_GetSQLServerList = '获取SQLServer服务器失败';C_Err_GetUserResource = '获取共享资失败';C_Err_GetGroupList = '获取所有工作组失败';C_Err_GetGroupUsers = '获取工作组中所有计算机失败';C_Err_GetNetList = '获取所有网络类型失败';C_Err_CheckNet = '网络不通';C_Err_CheckAttachNet = '未登入网络';C_Err_InternetConnected ='没有上网';C_Txt_CheckNetSuccess = '网络畅通';C_Txt_CheckAttachNetSuccess = '已登入网络';C_Txt_InternetConnected ='上网了';implementationend.。
Delphi函数大全
ArcTan 函数 余切函数
AssignFile 函数 给文件变量赋一外部文件名
函数 返回文件的属性
FileGetDate 函数 返回文件的DOS日期时间标记
ExtractFileName 函数 返回文件名
ExtractFilePath 函数 返回指定文件的路径
FileAge 函数 返回文件已存在的时间
FileSearch 命令 在目录中搜索指定的文件
FileOpen 命令 用指定的存取模式打开指定的文件
FilePos 函数 返回文件的当前指针位置
FileRead 命令 从指定的文件读取
Ctl3D 属性 是否具有3D效果
Cursor 属性 鼠标指针移入后的形状
Date 函数 返回当前的日期
Exit 命令 立即从当前的语句块中退出
Exp 函数 指数函数
ExpandFileName 函数 返回包含绝对路径的字符串
ExceptAddr 函数 返回引起当前意外的地址
Exclude 函数 从集合中删除一些元素
ExceptObject 函数 返回当前意外的索引
DecodeTime 函数 将时间格式分解为时、分、秒、毫秒
Delete 函数 从字符串中删除子串
DeleteFile 命令 删除文件
Brush 属性 画刷
Caption 属性 标签文字的内容
ChangeFileExt 函数 改变文件的后缀
ChDir 函数 改变当前目录
DragMode 属性 按动的作用方式
DropDownCount 属性 容许的显示数据项的数目
Delphi7数学、金融等函数
Delphi / Kylix 跨平台运行时(Runtime)库Copyright (c) 1996, 2001 Borland 软件********************************************************************这个单元包含高性能的算术、三角、对数、统计和金融方面的计算及FPU程序函数用于补充Delphi语言System.pas 单元中的数学常规程序函数参考:1) P.J. Plauger, "The Standard C Library", Prentice-Hall, 1992, Ch. 7. 《标准C程序库》2) W.J. Cody, Jr., and W. Waite, "Software Manual For the Elementary Functions", Prentice-Hall, 1980.《软件手册初步》3) Namir Shammas, "C/C++ Mathematical Algorithms for Scientists and Engineers", McGraw-Hill, 1995, Ch 8.《C/C++ 数学的运算法则对于科学家和工程师》4) H.T. Lau, "A Numerical Library in C for Scientists and Engineers", CRC Press, 1994, Ch. 6.《C语言中的数字的程序库对于科学家和工程师》5) "Pentium(tm) Processor User’s Manual, Vo lume 3: Architecture and Programming Manual", Intel, 1994《Pentium(tm) 处理器使用手册,第3 册: 体系结构和程序手册》注意1) 对于有些函数,这个单元中涉及的概念或常数由Earl F. Glynn () 和Ray Lischner ()提供。
delphi常用函数大全
delphi常用函数大全〔转〕Abort函数引起放弃的意外处理Abs函数绝对值函数AddExitProc函数将一过程添加到运行时库的结束过程表中Addr函数返回指定对象的地址AdjustLineBreaks函数将给定字符串的行分隔符调整为CR/LF序列Align属性使控件位于窗口某局部Alignment属性控件标签的文字位置AllocMem函数在堆栈上分配给定大小的块AllowGrayed属性允许一个灰度选择AnsiCompareStr函数比拟字符串〔区分大小写〕AnsiCompareText函数比拟字符串〔不区分大小写〕AnsiLowerCase函数将字符转换为小写AnsiUpperCase函数将字符转换为大写Append函数以附加的方式翻开已有的文件ArcTan函数余切函数AssignFile函数给文件变量赋一外部文件名Assigned函数测试函数或过程变量是否为空AutoSize属性自动控制标签的大小BackgroundColor属性背景色BeginThread函数以适当的方式建立用于内存管理的线程BevelInner属性控件方框的内框方式BevelOuter属性控件方框的外框方式BevelWidth属性控件方框的外框宽度BlockRead函数读一个或多个记录到变量中BlockWrite函数从变量中写一个或多个记录BorderStyle属性边界类型BorderWidth属性边界宽度Break命令终止for、while、repeat循环语句Brush属性画刷Caption属性标签文字的内容ChangeFileExt函数改变文件的后缀ChDir函数改变当前目录Checked属性确定复选框选中状态Chr函数返回指定序数的字符CloseFile命令关闭翻开的文件Color属性标签的颜色Columns属性显示的列数CompareStr函数比拟字符串〔区分大小写〕Concat函数合并字符串Continue命令继续for、while、repeat的下一个循环Copy函数返回一字符串的子串Cos函数余弦函数Ctl3D属性是否具有3D效果Cursor属性鼠标指针移入后的形状Date函数返回当前的日期DateTimeToFileDate函数将DELPHI的日期格式转换为DOS的日期格式DateTimeToStr函数将日期时间格式转换为字符串DateTimeToString函数将日期时间格式转换为字符串DateToStr函数将日期格式转换为字符串DayOfWeek函数返回星期的数值Dec函数递减变量值DecodeDate函数将日期格式分解为年月日DecodeTime函数将时间格式分解为时、分、秒、毫秒Delete函数从字符串中删除子串DeleteFile命令删除文件DiskFree函数返回剩余磁盘空间的大小DiskSize函数返回指定磁盘的容量Dispose函数释放动态变量所占的空间DisposeStr函数释放字符串在堆栈中的内存空间DitherBackground属性使背景色的色彩加重或减少50%DragCursor属性当鼠标按下时光标的形状DragMode属性按动的作用方式DropDownCount属性容许的显示数据项的数目EditMask属性编辑模式Enabled属性是否使标签呈现翻开状态EncodeDate函数将年月日合成为日期格式EncodeTime函数将时、分、秒、毫秒合成为时间格式EndMargin属性末尾边缘Eof函数对有类型或无类型文件测试是否到文件尾Eoln函数返回文本文件的行结束状态Erase命令删除外部文件ExceptAddr函数返回引起当前意外的地址Exclude函数从集合中删除一些元素ExceptObject函数返回当前意外的索引Exit命令立即从当前的语句块中退出Exp函数指数函数ExpandFileName函数返回包含绝对路径的字符串ExtendedSelect属性是否允许存在选择模式,True时,MultiSelect才有意义ExtractFileDir函数返回驱动器和路径ExtractFileExt函数返回文件的后缀ExtractFileName函数返回文件名ExtractFilePath函数返回指定文件的路径FileAge函数返回文件已存在的时间FileClose命令关闭指定的文件FileCreate命令用指定的文件名建立新文件FileDateToDateTime函数将DOS的日期格式转换为DELPHI的日期格式FileExists函数检查文件是否存在FileGatAttr函数返回文件的属性FileGetDate函数返回文件的DOS日期时间标记FileOpen命令用指定的存取模式翻开指定的文件FilePos函数返回文件的当前指针位置FileRead命令从指定的文件读取FileSearch命令在目录中搜索指定的文件FileSeek函数改变文件的指针FileSetAttr函数设置文件属性FileSetDate函数设置文件的DOS日期时间标记FileSize函数返回当前文件的大小FileWrite函数对指定的文件做写操作FillChar函数用指定的值填充连续字节的数FindClose命令终止FindFirst/FindNext序列FindFirst命令对指定的文件名及属性搜索目录FindNext命令返回与文件名及属性匹配的下一入口FloatToDecimal函数将浮点数转换为十进制数FloatToStrF函数将浮点数转换为字符串FloatToStr函数将浮点数转换为字符串FloatToText函数将给定的浮点数转换为十进制数FloatToTextFmt函数将给定的浮点数转换为十进制数Flush函数将缓冲区的内容刷新到输出的文本文件中FmtLoadStr函数从程序的资源字符串表中装载字符串FmtStr函数格式化一系列的参数,其结果以参数Result返回Font属性设置字体Format函数格式化一系列的参数并返回Pascal字符串FormatBuf函数格式化一系列的参数FormatDateTime函数用指定的格式来格式化日期和时间FormatFloat函数指定浮点数格式Frac函数返回参数的小数局部FreeMem函数按给定大小释放动态变量所占的空间GetDir返回指定驱动器的当前目录GetHeapStatus返回内存管理器的当前状态GetMem建立一指定大小的动态变量,并将指针指向该处GetMemoryManager返回内存管理器的入口点Glyph函数按钮上的图象Halt停止程序的执行并返回到操作系统Hi返回参数的高地址位High返回参数的上限值Hint属性提示信息Int返回参数的整数局部Include添加元素到集合中Insert在字符串中插入子串IntToHex将整型数转换为十六进制数IntToStr将整型数转换为字符串IOResult返回最新的I/O操作完成状态IsValidIdent测试字符串是否为有效的标识符Items属性默认显示的节点Kind属性摆放样式LargeChange属性最大改变值Layout属性图象布局Length函数返回字符串的动态长度Lines属性缺省显示内容Ln函数自然对数函数Lo函数返回参数的低地址位LoadStr函数从应用程序的可执行文件中装载字符资源LowerCase函数将给定的字符串变为小写Low函数返回参数的下限值Max属性最大值MaxLength属性最大长度Min属性最小值MkDir命令建立一子目录Move函数从源到目标复制字节MultiSelect属性允许同时选择几个数据项Name属性控件的名字New函数建立新的动态变量并设置一指针变量指向他NewStr函数在堆栈上分配新的字符串Now函数返回当前的日期和时间Odd测试参数是否为奇数OnActivate事件焦点移到窗体上时触发onClick事件单击窗体空白区域触发OnDblClick事件双击窗体空白区域触发OnCloseQuery事件使用者试图关闭窗体触发OnClose事件窗体关闭后才触发OnCreate事件窗体第一次创立时触发OnDeactivate事件用户切换到另一应用程序触发OnDragDrop事件鼠标拖放操作结束时触发OnDragOver事件有其他控件从他上面移过触发onMouseDown事件按下鼠标键时触发onMouseUp事件释放鼠标键时触发onMouseMove事件移动鼠标时触发OnHide事件隐藏窗体时触发onKeyDown事件按下键盘某键时触发onKeyPress事件按下键盘上的单个字符键时触发onKeyUp事件释放键盘上的某键时触发OnPaint事件窗体上有新局部暴露出来触发OnResize事件重新调整窗体大小触发OnShow事件在窗体实际显示之前瞬间触发Ord返回序数类的序数OutlineStyle属性类型OutOfMemoryError引起OutOfMemory意外PageIndex属性页索引Pages属性页ParamCount函数返回在命令行上传递给程序的参数数量ParamStr函数返回指定的命令行参数Pen属性画刷设置Pi函数返回圆周率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函数比拟两个字符串〔不区分大小写〕StringToWideChar函数将ANSI字符串转换为UNICODE字符串StrLCat函数将一字符串中的字符附加到另一字符串尾并返回合并的字符串StrLComp函数以最大长度比拟两个字符串StrLCopy函数将一个字符串中的字符复制到另一个字符串中StrLen函数返回字符串中的字符数StrLFmt函数格式化一系列的参数,其结果中包含有指向目标缓冲区的指针StrLIComp函数以最大长度比拟两个字符串〔不区分大小写〕StrLower函数将字符串中的字符转换为小写StrMove函数将一个字符串中的字符复制到另一个字符串中StrNew函数在堆栈上分配一个字符串StrPas函数将以NULL结束的字符串转换为PASCAL类的字符串StrPCopy函数将PASCAL类的字符串复制为以NULL结束的字符串StrPLCopy函数从PASCAL类的最大长度字符串复制为以NULL结束的字符串StrPos函数返回一个字符串在另一个字符串中首次出现指针StrRScan函数返回字符串中最后出现字符的指针StrScan函数返回字符串中出现首字符的指针StrToDate函数将字符串转换为日期格式StrToDateTime函数将字符串转换为日期/时间格式StrToFloat函数将给定的字符串转换为浮点数StrToInt函数将字符串转换为整型StrToIntDef函数将字符串转换为整型或默认值StrToTime函数将字符串转换为时间格式StrUpper函数将字符串中的字符转换为大写Style属性类型选择Suce函数返回后继的参数Swap函数交换参数的上下地址位Tabs属性标记每一项的内容TabIndex属性标记索引Text属性显示的文本TextToFloat函数将字符串〔以NULL结束的格式〕转换为浮点数Time函数返回当前的时间TimeToStr函数将时间格式转换为字符串Trim函数从给定的字符串中删除前导和尾部的空格及控制字符TrimLeft函数从给定的字符串中删除首部的空格及控制字符TrimRight函数从给定的字符串中删除尾部的空格及控制字符Trunc函数将实型值截取为整型值Truncate函数截去当前文件位置后的内容UnSelectedColor属性未选中颜色UpCase将字符转换为大写UpperCase将给定的字符串变为大写Val函数将字符串转换为整型值VarArrayCreate函数以给定的界限和维数建立变体数组VarArrayDimCount函数返回给定变体的维数VarArrayHighBound函数返回给定变体数组维数的上界VarArrayLock函数锁定给定的变体数组VarArrayLowBound函数返回给定变体数组维数的下界VarArrayOf函数返回指定变体的数组元素VarArrayRedim函数通过改变上限来调整变体的大小VarArrayUnlock函数解锁指定的变体数组VarAsType函数将变体转换为指定的类型VarCase函数将变体转换为指定的类型并保存他VarClear函数去除指定的变体VarCopy函数将指定的变体复制为指定的变体VarFormDateTime函数返回包含日期时间的变体VarIsArray函数测试变体是否为数组VarIsEmpty函数测试变体是否为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字符串函数大全功能返回两个字符串是否相似说明ANSI(American National Standards Institute)美国国家标准协会;不区分大小写例子CheckBox1.Checked := AnsiResemblesText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text是否包含子串ASubText说明不区分大小写例子CheckBox1.Checked := AnsiContainsText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text是否以子串ASubText开头说明不区分大小写例子CheckBox1.Checked := AnsiStartsText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text是否以子串ASubText结尾说明不区分大小写例子CheckBox1.Checked := AnsiEndsText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text中用子串AFromText替换成子串AToText的结果说明不区分大小写例子Edit4.Text := AnsiReplaceText(Edit1.Text, Edit2.Text, Edit3.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串数组A V alues中是否包含字符串A Text说明不区分大小写例子CheckBox1.Checked := AnsiMatchText(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text在字符串数组A Values中的位置说明不区分大小写;如果不包含那么返回-1例子SpinEdit1.Value := AnsiIndexText(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text是否包含子串ASubText说明区分大小写例子CheckBox1.Checked := AnsiContainsStr(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text是否以子串ASubText开头说明区分大小写例子CheckBox1.Checked := AnsiStartsStr(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text是否以子串ASubText结尾说明区分大小写例子CheckBox1.Checked := AnsiEndsStr(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text中用子串AFromText替换成子串AToText的结果说明区分大小写例子Edit4.Text := AnsiReplaceStr(Edit1.Text, Edit2.Text, Edit3.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串数组A V alues中是否包含字符串A Text说明区分大小写例子CheckBox1.Checked := AnsiMatchStr(Edit1.Text, ['a1', 'a2', 'a3', 'a4']); ━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text在字符串数组A Values中的位置说明区分大小写例子SpinEdit1.Value := AnsiIndexStr(Edit1.Text, ['a1', 'a2', 'a3', 'a4']);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text的ACount个复本说明当ACount为0时返回''例子Edit3.Text := DupeString(Edit1.Text, SpinEdit1.V alue);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text的反序说明ReverseString('1234') = '4321'例子Edit3.Text := ReverseString(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回嵌套字符串说明AStart:嵌套开始位置;ALength:嵌套长度;StuffString('abcd', 2, 0, '12') = 'a12bcd'例子Edit3.Text := StuffString(Edit1.Text, SpinEdit1.V alue, SpinEdit2.Value, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━功能随机返回字符串数组A Values中的一个元素说明之前建议执行Randomize例子Randomize; Edit3.Text := RandomFrom(['a1', 'a2', 'a3', 'a4']);━━━━━━━━━━━━━━━━━━━━━功能返回指定的逻辑字符串说明IfThen(True, '是', '否') = '是';IfThen(False, '是', '否') = '否'参考<NULL>例子Edit3.Text := IfThen(CheckBox1.Checked, Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text左边的ACount个字符说明LeftStr('123456', 3) = '123'例子Edit3.Text := LeftStr(Edit1.Text, SpinEdit1.Value);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text右边的ACount个字符说明RightStr('123456', 3) = '456'例子Edit3.Text := RightStr(Edit1.Text, SpinEdit1.Value);━━━━━━━━━━━━━━━━━━━━━功能返回字符串A Text从AStart开始的ACount个字符说明其实就是Copy例子Edit3.Text := MidStr(Edit1.Text, SpinEdit1.Value, SpinEdit2.Value);━━━━━━━━━━━━━━━━━━━━━功能返回第一个搜索到的指针位置说明这函数常用于文本中搜索字符串参考<NULL>例子///////Begin SearchBuffunction SearchEdit(EditControl: TCustomEdit; const SearchString: String; SearchOptions: TStringSearchOptions; FindFirst: Boolean = False): Boolean; varBuffer, P: PChar;Size: Word;beginResult := False;if (Length(SearchString) = 0) then Exit;Size := EditControl.GetTextLen;if (Size = 0) then Exit;Buffer := StrAlloc(Size + 1);tryEditControl.GetTextBuf(Buffer, Size + 1);P := SearchBuf(Buffer, Size, EditControl.SelStart, EditControl.SelLength, SearchString, SearchOptions);if P <> nil then beginEditControl.SelStart := P - Buffer;EditControl.SelLength := Length(SearchString);Result := True;end;finallyStrDispose(Buffer);end;end;procedure TForm1.Button1Click(Sender: TObject);varSearchOptions: TStringSearchOptions;beginSearchOptions := [];if CheckBox1.Checked thenInclude(SearchOptions, soDown);if CheckBox2.Checked thenInclude(SearchOptions, soMatchCase);if CheckBox3.Checked thenInclude(SearchOptions, soWholeWord);SearchEdit(Memo1, Edit1.Text, SearchOptions);Memo1.SetFocus;end;///////End SearchBuf━━━━━━━━━━━━━━━━━━━━━功能返回探测字符串参考<NULL>例子Edit2.Text := Soundex(Edit1.Text, SpinEdit1.Value);━━━━━━━━━━━━━━━━━━━━━功能返回探测整数说明ALength的值越大解码准确率越高参考<NULL>例子SpinEdit2.Value := SoundexInt(Edit1.Text, SpinEdit1.Value);━━━━━━━━━━━━━━━━━━━━━功能返回探测整数的解码说明DecodeSoundexInt(SoundexInt('hello')) 相当于Soundex('hello')参考<NULL>例子Edit2.Text := DecodeSoundexInt(SpinEdit2.Value);━━━━━━━━━━━━━━━━━━━━━功能返回探测文字数值说明没有参数ALength已经固定为4参考<NULL>例子SpinEdit2.Value := SoundexWord(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回探测文字数值的解码说明DecodeSoundexWord(SoundexWord('hello')) 相当于Soundex('hello')参考<NULL>例子Edit2.Text := DecodeSoundexWord(SpinEdit2.Value);━━━━━━━━━━━━━━━━━━━━━功能返回两个字符串的探测字符串是否相同说明Result := Soundex(A Text, ALength) = Soundex(AOther, ALength)参考<NULL>例子CheckBox1.Checked := SoundexSimilar(Edit1.Text, Edit2.Text, SpinEdit1.Value); ━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个字符串的探测字符串的结果说明Result := AnsiCompareStr(Soundex(AText, ALength), Soundex(AOther, ALength))例子SpinEdit2.Value := SoundexCompare(Edit1.Text, Edit2.Text, SpinEdit1.Value);━━━━━━━━━━━━━━━━━━━━━功能调用SoundexSimilar返回两个字符串的探测字符串是否相同说明系统变量AnsiResemblesProc的默认值例子[var AnsiResemblesProc: TCompareTextProc = SoundexProc;] ━━━━━━━━━━━━━━━━━━━━━功能返回一个新的字符串指针地址说明字符串S为空时返回NullStr例子////////Begin NewStr,DisposeStrprocedure TForm1.Button1Click(Sender: TObject);varP: PString;beginP := NewStr(Edit1.Text);Edit2.Text := P^;DisposeStr(P);end;////////End NewStr,DisposeStr━━━━━━━━━━━━━━━━━━━━━功能释放字符串指针P资源说明配合函数NewStr使用例子<如上参见,如下参见>━━━━━━━━━━━━━━━━━━━━━功能将字符串S更新给字符串指针P说明更新值时会释放以前字符串指针的资源例子////////Begin AssignStrprocedure TForm1.Button1Click(Sender: TObject);varP: PString;beginP := nil;AssignStr(P, Edit1.Text);Edit2.Text := P^;DisposeStr(P);end;////////End AssignStr━━━━━━━━━━━━━━━━━━━━━功能在字符串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━━━━━━━━━━━━━━━━━━━━━功能返回字符串S的大写形式说明非小写字符不处理例子Edit2.Text := UpperCase(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S的小写形式说明非大写字符不处理例子Edit2.Text := LowerCase(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个字符说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写参考<NULL>例子SpinEdit1.Value := CompareStr(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个内存指针说明CompareMem(PChar('12a'), PChar('12c'), 2)=True;CompareMem(PChar('12a'), PChar('12c'), 3)=False参考<NULL>例子CheckBox1.Checked := CompareMem(Self, Form1, 8);━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个字符串说明不区分大小写参考<NULL>例子SpinEdit1.Value := CompareText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回两个字符串是否相等说明不区分大小写参考<NULL>例子CheckBox1.Checked := SameText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S的大写形式说明ANSI(American National Standards Institute)美国国家标准协会;非小写的字符不变例子Edit2.Text := AnsiUpperCase(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S的小写形式说明非大写字符不处理例子Edit2.Text := AnsiLowerCase(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能反回比拟两个字符串说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写例子SpinEdit1.Value := AnsiCompareStr(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回两个字符串是否相等说明区分大小写例子CheckBox1.Checked := AnsiSameStr(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能反回比拟两个字符串说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;不区分大小写例子SpinEdit1.Value := AnsiCompareText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回两个字符串是否相等说明不区分大小写例子CheckBox1.Checked := AnsiSameText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个指针字符串说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写例子SpinEdit1.Value := AnsiStrComp(PChar(Edit1.Text), PChar(Edit2.Text))━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个指针字符串说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;不区分大小写;Ignore(忽略)例子SpinEdit1.Value := AnsiStrIComp(PChar(Edit1.Text), PChar(Edit2.Text))━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个指针字符串指定长度说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写;Length(长度)例子SpinEdit1.Value := AnsiStrLComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value) ━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个指针字符串指定长度说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;不区分大小写例子SpinEdit1.Value := AnsiStrLIComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value)━━━━━━━━━━━━━━━━━━━━━功能返回指针字符串小写形式说明非大写字符不处理例子Edit2.Text := AnsiStrLower(PChar(Edit1.Text));━━━━━━━━━━━━━━━━━━━━━功能返回指针字符串大写形式说明非小写字符不处理例子Edit2.Text := AnsiStrUpper(PChar(Edit1.Text));━━━━━━━━━━━━━━━━━━━━━功能返回字符串S的最后一个指针字符说明当字符串S为空串那么返回空指针例子Edit2.Text := AnsiLastChar(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回指针字符串P的最后一个指针字符说明当字符串P为空空指针那么返回空指针例子Edit2.Text := AnsiLastChar(PChar(Edit1.Text));━━━━━━━━━━━━━━━━━━━━━功能返回双字节字符串的大写形式说明WideChar双字节字符例子Edit2.Text := WideUpperCase(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回双字节字符串的小写形式说明我怎么就测试不出来呢例子Edit2.Text := WideLowerCase(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个双字节字符串说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写例子SpinEdit1.Value := WideCompareStr(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回两个双字节字符串是否相同说明区分大小写例子CheckBox1.Checked := WideSameStr(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回比拟两个双字节字符串说明当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;不区分大小写例子SpinEdit1.Value := WideCompareText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回两个双字节字符串是否相同说明不区分大小写例子CheckBox1.Checked := WideSameText(Edit1.Text, Edit2.Text);━━━━━━━━━━━━━━━━━━━━━功能返回除去字符串S左右不可见字符说明小于#32的字符看作不可见字符例子Edit2.Text := Trim(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回除去字符串S左边不可见字符说明小于#32的字符看作不可见字符例子Edit2.Text := TrimLeft(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回除去字符串S右边不可见字符说明小于#32的字符看作不可见字符例子Edit2.Text := TrimRight(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S在pascal中的表现形式说明单引号中的一个单引号将转成两个例子Edit2.Text := QuotedStr(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S以字符Quote为引号的表现形式说明AnsiQuotedStr('hello"world', '@')='@hello"world@';AnsiQuotedStr('hello"world', '"')='"hello""world"'例子Edit2.Text := AnsiQuotedStr(Edit1.Text, '"');━━━━━━━━━━━━━━━━━━━━━功能返回以字符Quote为引号的表现形式原形说明表现形式非法时Src不变否那么为空例子///////Begin AnsiExtractQuotedStrprocedure TForm1.Button1Click(Sender: TObject);varP: PChar;beginP := PChar(Edit1.Text);Edit2.Text := AnsiExtractQuotedStr(P, '"');Edit3.Text := P;end;///////End AnsiExtractQuotedStr━━━━━━━━━━━━━━━━━━━━━功能返回以字符AQuote为引号的表现形式原形说明表现形式非法时那么返回S例子Edit2.Text := AnsiDequotedStr(Edit1.Text, '"');━━━━━━━━━━━━━━━━━━━━━功能返回将给定字符串的行分隔符调整为CR/LF序列说明AdjustLineBreaks('1'#13'2'#13)='1'#13#10'2'#13#10;AdjustLineBreaks('1'#10'2'#10)='1'#13#10'2' #13#10例子<NULL>━━━━━━━━━━━━━━━━━━━━━功能返回字符串Ident是否是正确的标识符说明标识符::字母|下划线[字母|下划线|数字]...参考<NULL>例子CheckBox1.Checked := IsValidIdent(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回整数Value转换成字符串说明Format('%d', [Value])例子Edit2.Text := IntToStr(SpinEdit1.Value);━━━━━━━━━━━━━━━━━━━━━功能返回整数Value转换成十六进制表现结果;Format('%.*x', [Digits, Value])说明参数Digits指定字符最小宽度;最小宽度缺乏时将用0填充例子Edit2.Text := IntToHex(SpinEdit1.Value, SpinEdit2.Value);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成整数说明字符串非整数表达时将引起异常例子SpinEdit1.Value := StrToInt(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成整数说明字符串非整数表达时那么返回默认值Default例子SpinEdit1.Value := StrToIntDef(Edit1.Text, 0);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成整数Value是否成功说明字符串非整数表达时返回False并且Value将输出为0例子///////Begin TryStrToIntprocedure TForm1.Button1Click(Sender: TObject);varI: Integer;beginCheckBox1.Checked := TryStrToInt(Edit1.Text, I);SpinEdit1.Value := I;end;///////End TryStrToInt━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成六十四位整数说明字符串非六十四位整数表达时将引起异常例子SpinEdit1.Value := StrToInt64(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成六十四位整数说明字符串非六十四位整数表达时那么返回默认值Default例子SpinEdit1.Value := StrToInt64Def(Edit1.Text, 0);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成六十四位整数Value是否成功说明字符串非六十四位整数表达时返回False并且V alue将输出为0例子///////Begin TryStrToInt64procedure TForm1.Button1Click(Sender: TObject);varI: Int64;beginCheckBox1.Checked := TryStrToInt64(Edit1.Text, I);SpinEdit1.Value := I;end;///////End TryStrToInt64━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成逻辑值说明字符非逻辑表达时将引起异常例子CheckBox1.Checked := StrToBool(Edit1.Text);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成逻辑值说明字符非逻辑表达时那么返回默认值Default例子CheckBox1.Checked := StrToBoolDef(Edit1.Text, False);━━━━━━━━━━━━━━━━━━━━━功能返回字符串S转换成逻辑值Value是否成功说明[注意]0为假非0为真;不是'True'和'False';Delphi6 Bug 如下修正例子///////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) thenValue := Trueelse if CompareWith(FalseBoolStrs) thenValue := FalseelseResult := False;end;end;///////End TryStrToBool━━━━━━━━━━━━━━━━━━━━━功能返回逻辑值B转换成字符串说明BoolToStr(False, False)='0';BoolToStr(False, True)='-1'例子Edit1.Text := BoolToStr(CheckBox1.Checked, CheckBox2.Checked); ━━━━━━━━━━━━━━━━━━━━━功能返回根据标识Ident的字符串资源说明字符串资源是指程序的内部资源例子Edit2.Text := LoadStr(StrToIntDef(Edit1.Text, 0));━━━━━━━━━━━━━━━━━━━━━功能返回格式化的字符串资源说明字符串资源是指程序的内部资源例子<NULL>;━━━━━━━━━━━━━━━━━━━━━功能返回指针字符串的长度说明当指针字符串Str为nil时将触发异常参考<NULL>例子SpinEdit2.Value := StrLen(PChar(Edit1.Text));━━━━━━━━━━━━━━━━━━━━━功能返回指针字符串的结尾说明当指针字符串Str为nil时将触发异常参考<NULL>例子Edit2.Text := StrEnd(PChar(Edit1.Text)) - SpinEdit1.Value;━━━━━━━━━━━━━━━━━━━━━功能返回将指针字符串Source指定内存数量Count复制覆盖到指针字符串Dest中说明Dest没有分配资源将触发异常s例子///////Begin StrMoveprocedure TForm1.Button1Click(Sender: TObject);varvBuffer: PChar;beginvBuffer := '0123456789';StrMove(vBuffer, PChar(Edit1.Text), SpinEdit1.V alue);Edit2.Text := vBuffer;end;///////End StrMove━━━━━━━━━━━━━━━━━━━━━功能返回将指针字符串Source复制到指针字符串Dest中说明Dest应已经分配足够的空间非那么将触发异常参考<NULL>例子///////Begin StrCopyprocedure TForm1.Button1Click(Sender: TObject);varvBuffer: PChar;beginGetMem(vBuffer, Length(Edit1.Text) + 1);StrCopy(vBuffer, PChar(Edit1.Text));Edit2.Text := vBuffer;FreeMem(vBuffer);end;///////End StrCopy━━━━━━━━━━━━━━━━━━━━━功能返回将指针字符串Source复制到指针字符串Dest中的结尾说明可以连接指针字符串参考<NULL>例子///////Begin StrECopyprocedure TForm1.Button1Click(Sender: TObject);varvBuffer: array[0..255] of Char;beginStrECopy(StrECopy(vBuffer, PChar(Edit1.Text)), PChar(Edit2.Text));Edit3.Text := vBuffer;end;///////End StrECopy━━━━━━━━━━━━━━━━━━━━━功能返回将指针字符串Source指定长度MaxLen复制到指针字符串Dest中说明Dest应已经分配足够的空间非那么将触发异常参考<NULL>例子///////Begin StrLCopyprocedure TForm1.Button1Click(Sender: TObject);varvBuffer: array[0..255] of Char;beginStrLCopy(vBuffer, PChar(Edit1.Text), SpinEdit1.Value);Edit2.Text := vBuffer;end;///////End StrLCopy━━━━━━━━━━━━━━━━━━━━━功能返回将指针字符串Source复制到指针字符串Dest中说明StrLCopy(Dest, PChar(Source), Length(Source))例子///////Begin StrPCopyprocedure TForm1.Button1Click(Sender: TObject);varvBuffer: array[0..255] of Char;beginStrPCopy(vBuffer, PChar(Edit1.Text));Edit2.Text := vBuffer;end;///////End StrPCopy。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
type
TNetResourceArray = ^TNetResource;//网络类型的数组
Var
i: Integer;
Buf: Pointer;
//检测网络状态
Function CheckNet(IpAddr:string): Boolean;
//检测机器是否登入网络
Function CheckMacAttachNet: Boolean;
//判断Ip协议有没有安装 这个函数有问题
Function IsIPInstalled : boolean;
//获取网络中的所有网络类型
Function GetNetList(var List: Tstringlist): Boolean;
//获取网络中的工作组
Function GetGroupList(var List: TStringList): Boolean;
//获取工作组中所有计算机
Function GetUsers(GroupName: string; var List: TStringList): Boolean;
参 数:
IpAddr: 机器Ip
List: 需要填充的List
返回值: 成功: True,并填充List 失败: False;
备 注:
WNetOpenEnum function starts an enumeration of network
resources or existing connections.
finally
WSACleanup;
end;
end;
{=================================================================
功 能: 通过Ip返回机器名
参 数:
IpAddr: 想要得到名字的Ip
返回值: 成功: 机器名 失败: ''
IpAddr := '\\'+IpAddr; //填充Ip地址信息
FillChar(NetResource, SizeOf(NetResource), 0);//初始化网络层次信息
NetResource.lpRemoteName := @IpAddr[1];//指定计算机名称
Function IsIPInstalled : boolean;
var
WSData: TWSAData;
ProtoEnt: PProtoEnt;
begin
Result := True;
try
if WSAStartup(2,WSData) = 0 then
begin
ProtoEnt := GetProtoByName('IP');
unit Net;
interface
uses
SysUtils
,Windows
,dialogs
,winsock
,Classes
,ComObj
,WinInet;
//得到本机的局域网Ip地址
Function GetLocalIp(var LocalIp:string): Boolean;
function GetLocalIP(var LocalIp: string): Boolean;
var
HostEnt: PHostEnt;
Ip: string;
addr: pchar;
Buffer: array [0..63] of char;
GInitData: TWSADATA;
网络函数大全
{=========================================================================
功 能: 网络函数库
时 间: 2002/10/02
版 本: 1.0
=========================================================================}
WNetEnumResource function continues a network-resource
enumeration started by the WNetOpenEnum function.
版 本:
1.0 2002/10/03 07:30:00
=============================================================ourceArray;
lphEnum: THandle;
NetResource: TNetResource;
Count,BufSize,Res: DWord;
Begin
Result := False;
List.Clear;
if copy(Ipaddr,0,2) <> '\\' then
if IpAddr = '' then exit;
try
WSAStartup(2, WSAData);
SockAddrIn.sin_addr.s_addr := inet_addr(PChar(IPAddr));
HostEnt := gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
//获取网络中的资源
Function GetUserResource(IpAddr: string; var List: TStringList): Boolean;
//映射网络驱动器
Function NetAddConnection(NetPath: Pchar; PassWord: Pchar;LocalPath: Pchar): Boolean;
if ProtoEnt = nil then
Result := False
end;
finally
WSACleanup;
end;
end;
{=================================================================
功 能: 返回网络中的共享资源
begin
Result := False;
if GetSystemMetrics(SM_NETWORK) <> 0 then
Result := True;
end;
{=================================================================
//通过Ip返回机器名
Function GetNameByIPAddr(IPAddr: string; var MacName: string): Boolean ;
//获取网络中SQLServer列表
Function GetSQLServerList(var List: Tstringlist): Boolean;
//检测机器是否上网
Function InternetConnected: Boolean;
implementation
{=================================================================
功 能: 检测机器是否登入网络
参 数: 无
返回值: 成功: True 失败: False
备 注:
版 本:
1.0 2002/10/03 09:55:00
=================================================================}
Function CheckMacAttachNet: Boolean;
if HostEnt <> nil then
MacName := StrPas(Hostent^.h_name);
Result := True;
finally
WSACleanup;
end;
end;
{=================================================================
addr := HostEnt^.h_addr_list^;
ip := Format('%d.%d.%d.%d', [byte(addr [0]),
byte (addr [1]), byte (addr [2]), byte (addr [3])]);
LocalIp := Ip;
Result := True;
begin
Result := False;
try
WSAStartup(2, GInitData);
GetHostName(Buffer, SizeOf(Buffer));
HostEnt := GetHostByName(buffer);
if HostEnt = nil then Exit;
function GetNameByIPAddr(IPAddr : String;var MacName:String): Boolean;
var
SockAddrIn: TSockAddrIn;