Delphi函数大全2



首部  function FileGetDate(Handle: Integer): Integer; $[SysUtils.pas
功能  返回文件的修改时间
说明  读取失败则返回-1
参考  function Windows.GetFileTime
例子
///////Begin FileGetDate
procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
begin
  I := FileOpen(Edit1.Text, fmOpenRead);
  if I < 0 then Exit;
  SpinEdit1.Value := FileGetDate(I);
  Edit2.Text := DateTimeToStr(FileDateToDateTime(SpinEdit1.Value));
  FileClose(I);
end;
///////End FileGetDate
━━━━━━━━━━━━━━━━━━━━━
首部  function FileSetDate(const FileName: string; Age: Integer): Integer; overload; $[SysUtils.pas
首部  function FileSetDate(Handle: Integer; Age: Integer): Integer; overload; platform; $[SysUtils.pas
功能  返回设置文件的修改时间
说明  修改成功则返回0
参考  function Windows.SetFileTime
例子  SpinEdit1.Value := FileSetDate(Edit1.Text, DateTimeToFileDate(StrToDateTime(Edit2.Text)));
━━━━━━━━━━━━━━━━━━━━━  
首部  function FileGetAttr(const FileName: string): Integer; platform; $[SysUtils.pas
功能  返回文件的属性
说明  读取失败则返回$FFFFFFFF
参考  function Windows.GetFileAttributes
例子  SpinEdit1.Value := FileGetAttr(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function FileSetAttr(const FileName: string; Attr: Integer): Integer; platform; $[SysUtils.pas
功能  返回设置文件的属性
说明  设置成功则返回0
参考  function Windows.SetFileAttributes
例子  SpinEdit1.Value := FileSetAttr(Edit1.Text, SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部  function FileIsReadOnly(const FileName: string): Boolean; $[SysUtils.pas
功能  返回文件是否只读
说明  文件不存在看作只读
参考  function Windows.GetFileAttributes
例子  CheckBox1.Checked := FileIsReadOnly(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function FileSetReadOnly(const FileName: string; ReadOnly: Boolean): Boolean; $[SysUtils.pas
功能  返回设置文件是否只读是否成功
说明  文件不存在则返回False
参考  function Windows.GetFileAttributes;function Windows.SetFileAttributes
例子  CheckBox1.Checked := FileSetReadOnly(Edit1.Text, CheckBox2.Checked);
━━━━━━━━━━━━━━━━━━━━━  
首部  function DeleteFile(const FileName: string): Boolean; $[SysUtils.pas
功能  返回删除文件是否成功
说明  文件不存在则返回False
参考  function Windows.DeleteFile
例子  CheckBox1.Checked := DeleteFile(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━  
首部  function RenameFile(const OldName, NewName: string): Boolean; $[SysUtils.pas
功能  返回重命名文件是否成功
说明  文件不存在则返回False
参考  function Windows.MoveFile
例子  CheckBox1.Checked := RenameFile(Edit1.Text, Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ChangeFileExt(const FileName, Extension: string): string; $[SysUtils.pas
功能  返回改变扩展名后的文件名
说明  [注意]扩展名Extension前要加点;ChangeFileExt('a.jpg', 'bmp')='abmp'
参考  function SysUtils.LastDelimiter;function System.Copy
例子  Edit1.Text := ChangeFileExt(Edit2.Text, Edit3.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExtractFilePath(const FileName: string): string; $[SysUtils.pas
功能  返回文件名所在的路径
说明  ExtractFilePath('C:\')='C:\';ExtractFilePath('\\Server\Tool\Calc.exe')='\\Server\Tool\'
参考  function SysUtils.LastDelimiter;function System.Copy
例子  Edit1.Text := ExtractFilePath(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExtractFileDir(const FileName: string): string; $[SysUtils.pas
功能  返回文件名所在的目录
说明  ExtractFileDir('C:\')='C:\';ExtractFileDir('\\Server\Tool\Calc.exe')='\\Server\Tool'
参考  function SysUtils.LastDelimiter;function System.Copy
例子  Edit1.Text := ExtractFileDir(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExtractFileDrive(const FileName: string): string; $[SysUtils.pas
功能  返回文件名所在驱动器
说明  ExtractFileDrive('C:\')='C:';ExtractFileDrive('\\Server\Tool\Calc.exe')='\\Server\Tool'
参考  function System.Copy
例子  Edit1.Text := ExtractFileDrive(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExtractFileName(const FileName: string): string; $[SysUtils.pas
功能  返回绝对文件名
说明  ExtractFileName('C:\')='';ExtractFileName('\\Server\Tool\Calc.exe')='Calc.exe'
参考  function SysUtils.LastDelimiter;function System.Copy
例子  Edit1.Text := ExtractFileName(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExtractFileExt(const FileName: string): string; $[SysUtils.pas
功能  返回文件名的扩展名
说明  ExtractFileExt('C:\')='';ExtractFileExt('\\Server\Tool\Calc.exe')='.exe'
参考  function SysUtils.LastDelimiter;function System.Copy
例子  Edit1.Text := ExtractFileExt(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExpandFileName(const FileName: string): string; $[SysUtils.pas
功能  返回文件名的完整表示
说明  ExpandFileName('hello.pas')='C:\Program Files\Borland\Delphi6\Projects\hello.pas'
参考  function Windows.GetFullPathName
例子  Edit1.Text := ExpandFileName(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExpandFileNameCase(const FileName: string; out MatchFound: TFilenameCaseMatch): string; $[SysUtils.pas
功能  分情况返回文件名的完整表示
说明  type TFilenameCaseMatch = (mkNone, mkExactMatch, mkSingleMatch, mkAmbiguous);
参考  function Windows.GetFullPathName;function SysUtils.SameFileName;function SysUtils.FindFirst
例子
///////Begin ExpandFileNameCase
procedure TForm1.Button1Click(Sender: TObject);
var
  vFilenameCaseMatch: TFilenameCaseMatch;
begin
  Edit1.Text := ExpandFileNameCase(Edit2.Text, vFilenameCaseMatch);
  SpinEdit1.Value := ord(vFilenameCaseMatch);
end;
///////End ExpandFileNameCase
━━━━━━━━━━━━━━━━━━━━━
首部  function ExpandUNCFileName(const FileName: string): string; $[SysUtils.pas
功能  返回LINUX文件名的完整表示
说明  ExpandUNCFileName('C:/')='C:\'
参考  function SysUtils.ExpandFileName
例子  Edit1.Text := ExpandUNCFileName(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExtractRelativePath(const BaseName, DestName: string): string; $[SysUtils.pas
功能  返回参数的相对路径
说明  ExtractRelativePath('C:\Windows\', 'C:\Windows\System')='System'
参考  function SysUtils.SameFilename;function SysUtils.ExtractFileDrive
例子  Edit1.Text := ExtractRelativePath(Edit2.Text, Edit3.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function ExtractShortPathName(const FileName: string): string; $[SysUtils.pas
功能  返回参数的DOS路径
说明  ExtractShortPathName('C:\Program Files\Borland')='C:\PROGRA~1\BORLAND'
参考  function Windows.GetShortPathName
例子  Edit1.Text := ExtractShortPathName(Edit2.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function FileSearch(const Name, DirList: string): string; $[SysUtils.pas
功能  返回目录列表中DirList搜索的第一个结果
说明  FileSearch('Calc.exe', 'd:\winxp\system32;c:\windows')='d:\winxp\system32\calc.exe'
参考  function SysUtils.FileExists;function SysUtils.AnsiLastChar
例子  Edit1.Text := FileSearch(Edit2.Text, Edit3.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function DiskFree(Drive: Byte): Int64; $[SysUtils.pas
功能  返回驱动器可用空间
说明  参数Drive为0表示当前路径,为1表示=A驱,为2表示=B驱...;获取失败则返回-1
参考  function Windows.GetDiskFreeSpaceExA
例子  SpinEdit1.Value := DiskFree(SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部  function DiskSize(Drive: Byte): Int64; $[SysUtils.pas
功能  返回驱动器全?*占?br /> 说明  参数Drive为0表示当前路径,为1表示=A驱,为2表示=B驱...;获取失败则返回-1
参考  function Windows.GetDiskFreeSpaceExA
例子  SpinEdit1.Value := DiskSize(SpinEdit2.Value);
━━━━━━━━━━━━━━━━━━━━━
首部  function FileDateToDateTime(FileDate: Integer): TDateTime; $[SysUtils.pas
功能  返回将文件日期时间类型转换日期时间类型
说明  FileDate非法是将触发异常
参考  function SysUtils.EncodeDate;function SysUtils.EncodeTime
例子  <参见FileAge>
━━━━━━━━━━━━━━━━━━━━━
首部  function DateTimeToFileDate(DateTime: TDateTime): Integer; $[SysUtils.pas
功能  返回将日期时间类型转换文件日期时间类型
说明  年份在1980到2107之外则返回0
参考  function SysUtils.DecodeDate;function SysUtils.DecodeTime
例子  <参见FileSetDate>
━━━━━━━━━━━━━━━━━━━━━  
首部  function GetCurrentDir: string; $[SysUtils.pas
功能  返回当前操作目录
说明  [注意]调用文件对话框会改变当前操作目录
参考  function System.GetDir
例子  Edit1.Text := GetCurrentDir;
━━━━━━━━━━━━━━━━━━━━━  
首部  function SetCurrentDir(const Dir: string): Boolean; $[SysUtils.pas
功能  返回设置当前操作目录是否成功
说明  [注意]调用文件对话框会改变当前操作目录
参考  function Windows.SetCurrentDirectory
例子  CheckBox1.Checked := SetCurrentDir(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function CreateDir(const Dir: string): Boolean; $[SysUtils.pas
功能  返回创建目录是否成功
说明  不支持多级目录;已经存在则返回False
参考  function Windows.CreateDirectory
例子  CheckBox1.Checked := CreateDir(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function RemoveDir(const Dir: string): Boolean; $[SysUtils.pas
功能  返回删除目录是否成功
说明  必须是空目录
参考  function Windows.RemoveDirectory
例子  CheckBox1.Checked := RemoveDir(Edit1.Text);
━━━━━━━━━━━━━━━━━━━━━
首部  function StrLen(const Str: PChar): Cardinal; $[SysUtils.pas
功能  返回指针字符串的长度
说明  当指针字符串Str为nil时将触发异常
参考  <NULL>
例子  SpinEdit2.Value := StrLen(PChar(Edit1.Text));
━━━━━━━━━━━━━━━━━━━━━
首部  function StrEnd(const Str: PChar): PChar; $[SysUtils.pas
功能  返回指针字符串的结尾
说明  当指针字符串Str为nil时将触发异常
参考  <NULL>
例子  Edit2.Text := StrEnd(PChar(Edit1.Text)) - SpinEdit1.Value;
━━━━━━━━━━━━━━━━━━━━━
首部  function StrMove(Dest: PChar; const Source: PChar; Count: Cardinal): PChar; $[SysUtils.pas
功能  返回将指针字符串Source指定内存数量Count复制覆盖到指针字符串Dest中
说明  Dest没有分配资源将触发异常s
参考  function System.Move
例子
///////Begin StrMove
procedure TForm1.Button1Click(Sender: TObject);
var
  vBuffer: PChar;
begin
  vBuffer := '0123456789';
  StrMove(vBuffer, PChar(Edit1.Text), SpinEdit1.Value);
  Edit2.Text := vBuffer;
end;
///////End StrMove
━━━━━━━━━━━━━━━━━━━━━
首部  function StrCopy(Dest: PChar; const Source: PChar): PChar; $[SysUtils.pas
功能  返回将指针字符串Source复制到指针字符串Dest中
说明  Dest应已经分配足够的空间非则将触发异常
参考  <NULL>
例子
///////Begin StrCopy
procedure TForm1.Button1Click(Sender: TObject);
var
  vBuffer: PChar;
begin
  GetMem(vBuffer, Length(Edit1.Text) + 1);
  StrCopy(vBuffer, PChar(Edit1.Text));
  Edit2.Text := vBuffer;
  FreeMem(vBuffer);
end;
///////End StrCopy
━━━━━━━━━━━━━━━━━━━━━
首部  function StrECopy(DestChar; const Source: PChar): PChar; $[SysUtils.pas
功能  返回将指针字符串Source复制到指针字符串Dest中的结尾
说明  可以连接指针字符串
参考  <NULL>
例子
///////Begin StrECopy
procedure TForm1.Button1Click(Sender: TObject);
var
  vBuffer: array[0..255] of Char;
begin
  StrECopy(StrECopy(vBuffer, PChar(Edit1.Text)), PChar(Edit2.Text));
  Edit3.Text := vBuffer;
end;
///////End StrECopy
━━━━━━━━━━━━━━━━━━━━━
首部  function StrLCopy(Dest: PChar; const Source: PChar; MaxLen: Cardinal): PChar; $[SysUtils.pas
功能  返回将指针字符串Source指定长度MaxLen复制到指针字符串Dest中
说明  Dest应已经分配足够的空间非则将触发异常
参考  <NULL>
例子
///////Begin StrLCopy
procedure TForm1.Button1Click(Sender: TObject);
var
  vBuffer: array[0..255] of Char;
begin
  StrLCopy(vBuffer, PChar(Edit1.Text), SpinEdit1.Value);
  Edit2.Text := vBuffer;
end;
///////End StrLCopy
━━━━━━━━━━━━━━━━━━━━━
首部  function StrPCopy(Dest: PChar; const Source: string): PChar; $[SysUtils.pas
功能  返回将指针字符串Source复制到指针字符串Dest中
说明  StrLCopy(Dest, PChar(Source), Length(Source))
参考  function SysUtils.StrLCopy
例子
///////Begin StrPCopy
procedure TForm1.Button1Click(Sender: TObject);
var
  vBuffer: array[0..255] of Char;
begin
  StrPCopy(vBuffer, PChar(Edit1.Text));
  Edit2.Text := vBuffer;
end;
///////End StrPCopy
━━━━━━━━━━━━━━━━━━━━━
首部  function StrPLCopy(Dest: PChar; const Source: string; MaxLen: Cardinal): PChar; $[SysUtils.pas
功能  返回将字符串Source指定长度MaxLen复制到指针字符串Dest中
说明  StrLCopy(Dest, PChar(Source), MaxLen)
参考  function SysUtils.StrLCopy
例子
///////Begin StrPLCopy
procedure TForm1.Button1Click(Sender: TObject);
var
  vBuffer: array[0..255] of Char;
begin
  StrPLCopy(vBuffer, Edit1.Text, SpinEdit1.Value);
  Edit2.Text := vBuffer;
end;
///////End StrPLCopy
━━━━━━━━━━━━━━━━━━━━━
首部  function StrCat(Dest: PChar; const Source: PChar): PChar; $[SysUtils.pas
功能  返回连接指针字符串Dest和指针字符串Source
说明  StrCopy(StrEnd(Dest), Source)
参考  function SysUntils.StrCopy
例子
///////Begin StrCat
procedure TForm1.Button1Click(Sender: TObject);
var
  vBuffer: array[0..255] of Char;
begin
  StrPCopy(vBuffer, Edit1.Text);
  StrCat(vBuffer, PChar(Edit2.Text));
  Edit3.Text := vBuffer;
end;
///////End StrCat
━━━━━━━━━━━━━━━━━━━━━
首部  function StrLCat(Dest: PChar; const Source: PChar; MaxLen: Cardinal): PChar; $[SysUtils.pas
功能  返回连接指针字符串Dest和指针字符串Source
说明  [注意]MaxLen指定连接后的最大长度不是指针字符串Source的长度
参考  <NULL>
例子
///////Begin StrLCat
procedure TForm1.Button1Click(Sender: TObject);
var
  vBuffer: array[0..255] of Char;
begin
  StrPCopy(vBuffer, Edit1.Text);
  StrLCat(vBuffer, PChar(Edit2.Text), SpinEdit1.Value);
  Edit3.Text := vBuffer;
end;
///////End StrLCat
━━━━━━━━━━━━━━━━━━━━━
首部  function StrComp(const Str1, Str2: PChar): Integer; $[SysUtils.pas
功能  返回比较两个指针字符串
说明  当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写;[注意]返回第一个出现不同字符的差异
参考  <NULL>
例子  SpinEdit1.Value := StrComp(PChar(Edit1.Text), PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部  function StrIComp(const Str1, Str2: PChar): Integer; $[SysUtils.pas
功能  返回比较两个指针字符串
说明  当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;不区分大小写;[注意]返回第一个出现不同字符的差异
参考  <NULL>
例子  SpinEdit1.Value := StrIComp(PChar(Edit1.Text), PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部  function StrLComp(const Str1, Str2: PChar; MaxLen: Cardinal): Integer; $[SysUtils.pas
功能  返回比较两个指针字符串指定长度
说明  当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;区分大小写;Length(长度);[注意]返回第一个出现不同字符的差异
参考  <NULL>
例子  SpinEdit1.Value := StrLComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value)
━━━━━━━━━━━━━━━━━━━━━
首部  function StrLIComp(const Str1, Str2: PChar; MaxLen: Cardinal): Integer; $[SysUtils.pas
功能  返回比较两个指针字符串指定长度
说明  当S1>S2返回值>0;当S1<S2返回值<0;当S1=S2返回值=0;不区分大小写;[注意]返回第一个出现不同字符的差异
参考  <NULL>
例子  SpinEdit1.Value := StrLIComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value)
━━━━━━━━━━━━━━━━━━━━━
首部  function StrScan(const Str: PChar; Chr: Char): PChar; $[SysUtils.pas
功能  返回在指针字符串Str搜索字符Chr第一个出现的地址
说明  没有找到则返回空指针
参考  <NULL>
例子  Edit2.Text := StrScan(PChar(Edit1.Text), '*');
━━━━━━━━━━━━━━━━━━━━━
首部  function StrRScan(const Str: PChar; Chr: Char): PChar; $[SysUtils.pas
功能  返回在指针字符串Str搜索字符Chr最后一个出现的地址
说明  没有找到则返回空指针
参考  <NULL>
例子  Edit2.Text := StrRScan(PChar(Edit1.Text), '*');
━━━━━━━━━━━━━━━━━━━━━
首部  function StrPos(const Str1, Str2: PChar): PChar; $[SysUtils.pas
功能  返回指针字符串Str2在Str1中第一个出现的地址
说明  没有找到则返回空指针;StrPos('12345', '3') = '345'
参考  <NULL>
例子  Edit3.Text := StrPos(PChar(Edit1.Text), PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━  
首部  function StrUpper(Str: PChar): PChar; $[SysUtils.pas
功能  返回指针字符串Str大写
说明  非小写字符不处理
参考  <NULL>
例子  Edit1.Text := StrUpper(PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部  function StrLower(Str: PChar): PChar; $[SysUtils.pas
功能  返回指针字符串Str小写
说明  非大写字符不处理
参考  <NULL>
例子  Edit1.Text := StrLower(PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━  
首部  function StrPas(const Str: PChar): string; $[SysUtils.pas
功能  返回指针字符串Str转换成字符串
说明  也可以直接赋值
参考  <NULL>
例子  Edit1.Text := StrPas(PChar(Edit2.Text));
━━━━━━━━━━━━━━━━━━━━━
首部  function StrAlloc(Size: Cardinal): PChar; $[SysUtils.pas
功能  返回分配指定空间的内存资源给指针字符串
说明  空间的大小也将保存;用StrDispose才能全部释放
参考  function System.GetMem
例子
///////Begin StrAlloc
procedure TForm1.Button1Click(Sender: TObject);
var
  P: PChar;
begin
  P := StrAlloc(SpinEdit1.Value);
  ShowMessage(IntToStr(StrLen(P)));
  Dec(P, SizeOf(Cardinal));
  ShowMessage(IntToStr(Cardinal(Pointer(P)^)));
  Inc(P, SizeOf(Cardinal));
  StrDispose(P);
end;
///////End StrAlloc

━━━━━━━━━━━━━━━━━━━━━
首部  function StrBufSize(const Str: PChar): Cardinal; $[SysUtils.pas
功能  返回通过函数StrAlloc分配的缓冲区大小
说明  出现异常情况则返回不可预知的结果
参考  function System.SizeOf
例子  SpinEdit1.Value := StrBufSize(StrAlloc(SpinEdit2.Value));
━━━━━━━━━━━━━━━━━━━━━
首部  function StrNew(const Str: PChar): PChar; $[SysUtils.pas
功能  返回复制一个新的指针字符串
说明  如果Str为nil则返回nil
参考  function SysUtils.StrLen;function SysUtils.StrMove;function SysUtils.StrAlloc
例子
///////Begin StrNew,StrDispose
procedure TForm1.Button1Click(Sender: TObject);
var
  P: PChar;
begin
  P := StrNew(PChar(Edit1.Text));
  ShowMessage(P);
  StrDispose(P);
end;
///////End StrNew,StrDispose
━━━━━━━━━━━━━━━━━━━━━




文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: delphi
相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.