Delphi中获取路径的函数

更新时间:2023-07-23 14:07:22 阅读: 评论:0

Delphi中获取路径的函数
//********获取当前路径***************
收集英语
GetCurrentDir() //获取当前的Windows打开的目录,无斜'\'
Name); //获取某个程序的目录,有斜'\'
ExtractFilePath(ParamStr(0)); //获取当前运行文件的目录,有斜'\'
ExtractFileDir(Application.Exename); //获取某个程序的目录,无斜'\'
ExtractFileName('C:\');  //取得文件名
察看文件是否存在
FileExists(FileName:String):Boolean;
判断文件路径是否存在
DirectoryExists('C:\test\');
改变文件扩展名
ChangeFileExt(FileName:String)
得到文件的扩展名
ExtractFileExt(FileName:String):String;
SysUtils 单元中有 ExtractFileDir 与 ExtractFilePath两个类似的函数, 用哪一个?没有太大的关系。
  不过有以下的差别: ExtractFilePath 传回值的最後一个字元是反斜杠"/"。
通过ame特性可以获取当前进程的进程和文件名,要从中提取信息,
可以调用下列函数:(假设路径和名称是c:\delphi\): 
extractfiledir()    c:\delphi\bin 
extractfiledrive()  c: 
extractfileext()    .exe 
extractfilename()     
extractfilepath()    c:\delphi\bin\
extractfiledir()    c:\delphi\bin
用法示例:  ExtractFilePath(Application.ExeName);
以下引用片段:
偶然从 SysUtils 里发现了几个路径相关的函数, 以前没见过, 可能是 2010 新增的:
GetLocaleDirectory();
GetLocaleFile();
LocaleDirectoryExists();
电影人证
LocaleFileExists();
--------------------------------------------------------------------------------
应用测试:
--------------------------------------------------------------------------------
us IOUtils;
procedure TForm1.FormCreate(Sender: TObject);
var
p,f: string;
b: Boolean;
begin
{设置与获取当前路径}
SetCurrentDir('C:\Temp\');
ShowMessage(GetCurrentDir);        { C:\Temp }
潜水位
{获取当前目录下子目录的全路径}
p := GetLocaleDirectory('ABC');
ShowMessage(p);                    { C:\Temp\ABC\ }
{获取当前目录下文件的全路径}
f := GetLocaleFile('X.txt');
ShowMessage(f);                    { C:\ }
f := GetLocaleFile('');
ShowMessage(f);                    { C:\Temp\ }
五胡乱华{IOUtils 下的 TPath 也有类似功能}
f := TPath.GetFullPath('X.txt');
ShowMessage(f);                    { C:\ }
f := TPath.GetFullPath('');
ShowMessage(f);                    { C:\Temp\ }
{判断当前文件夹下的文件或子文件夹是否存在}
b := LocaleDirectoryExists('ABC'); //这相当于: DirectoryExists(GetCurrentDir + '\ABC');
b := LocaleFileExists('X.txt');    //这相当于: FileExists(GetCurrentDir + '\X.txt');
end;
1、文件名函数
  文件名函数可
以对文件的名称、所在子目录、驱动器和扩展名等进行操作。下表列出这些函数及其功能。
函数 说明
ExpandFileName() 返回文件的全路径(含驱动器、路径)
亲情最珍贵作文
ExtractFileExt() 从文件名中抽取扩展名
ExtractFileName() 从文件名中抽取不含路径的文件名
ExtractFilePath() 从文件名中抽取路径名
ExtractFileDir() 从文件名中抽取目录名
ExtractFileDrive() 从文件名中抽取驱动器名
ChangeFileExt() 改变文件的扩展名
ExpandUNCFileName() 返回含有网络驱动器的文件全路径
ExtractRelativePath() 从文件名中抽取相对路径信息
ExtractShortPathName() 把文件名转化为DOS的8·3格式
MatchesMask() 检查文件是否与指定的文件名格式匹配
ExtractFilePath(FileName:String)
该函数返回路径名,其结尾字符总是“\”
ExtractFileDir(FileName:String)
该函数同样返回路径名,但不包括结尾的字符“\”,除非返回的路径是根目录。
  下面就把这些函数作一一介绍:
(**** 转载敬请注明-本文出处:南山古桃(nsgtao)的百度空间:/nsgtao/ ****)
⑴ExpandFileName()
  原型:extern PACKAGE AnsiString __fastcall ExpandFileName(const AnsiString FileName);
***南山古桃(nsgtao)的百度空间:/nsgtao/ ***
  功能:返回文件的全路径(含驱动器、路径)
  参数:FileName:要处理的文件名
  例:ShowMessage(ExpandFileName(Application->ExeName));//显示你的程序文件名,如C:\MyBCB\Sample1.EXE
⑵ExtractFileExt()
  原型:extern PACKAGE AnsiString __fastcall ExtractFileExt(const AnsiString FileName);
  功能:从文件名中抽取扩展名
  参数:FileName:要处理的文件名(全路径)
  例:ShowMessage(ExtractFileExt(Application->ExeName));//显示".exe"
⑶ExtractFileName()
  原型:extern PACKAGE AnsiString __fastcall ExtractFileName(const AnsiString FileName);
  功能:从文件名中抽取不含路径的文件名
  参数:FileName:要处理的文件名
  例:ShowMessage(ExtractFileExt("c:\\Winnt\\SOL.EXE"));//显示"SOL.EXE"
(**** 转载敬请注明-本文出处:南山古桃(nsgtao)的百度空间:/nsgtao/ ****)
⑷ExtractFilePath()
  原型:extern PACKAGE AnsiString __fastcall ExtractFilePath(const AnsiString FileName);
  功能:从文件名中抽取路径名
  参数:FileName:要处理的文件名
  例:ShowMessage(ExtractFilePath("Winnt\\SOL.EXE"));//显示"Winnt\"
⑸ExtractFileDir()
神奇的什么  原型:extern PACKAGE AnsiString __fastcall ExtractFileDir(const AnsiString FileName);
  功能:从文件名中抽取目录名(和上个函数不同,不包括最后的"\")
  参数:FileName:要处理的文件名
  例:ShowMessage(ExtractFileDir("Winnt\\SOL.EXE
"));//显示"Winnt",注意和上个函数的区别
⑹ExtractFileDrive()
  原型:extern PACKAGE AnsiString __fastcall ExtractFileDrive(const AnsiString FileName);
  功能:从文件名中抽取驱动器名
  参数:FileName:要处理的文件名
  例:ShowMessage(ExtractFileDrive("c:\\Winnt\\SOL.EXE"));//显示"c:"
⑺ChangeFileExt()
  原型:extern PACKAGE System::AnsiString __fastcall ChangeFileExt(const System::AnsiString FileName, const System::AnsiString Extension);
  功能:更改文件名的扩展名,不是对真正的文件进行改名,只是对文件名这个字符串进行处理
  参数:FileName:要改名的文件名,Extension:新的扩展名
  例:ShowMessage(ChangeFileExt("c:\\Winnt\\SOL.EXE",".OOO"));//显示"c:\winnt\SOL.OOO"
⑻ExpandUNCFileName()
  原型:extern PACKAGE AnsiString __fastcall ExpandUNCFileName(const AnsiString FileName);
  功能:返回含有网络驱动器的文件全路径,格式为:\\机器名\共享名\文件名
  参数:FileName:要处理的文件名
  例:ShowMessage(ExpandUNCFileName("F:\\Winnt\\SOL.EXE"));/*如果F:是映射的网络驱动器\\NT40\WINNT,则显示"\\NT40\WINNT\SOL.EXE"*/
⑼ExtractRelativePath()
妃位晋升顺序
  原型:extern PACKAGE AnsiString __fastcall ExtractRelativePath(const AnsiString BaName, const AnsiString DestName);
  功能:从文件名中抽取相对路径信息,如"..\sss\ss.asd"这种形式 孕妇季玥
  参数:BaName:基准文件名;DestName:目标文件名
  例:ShowMessage(ExtractRelativePath("D:\\Source\\c\\1.123","D:\\Source\\Asm\\dz.asm"));/*显示"..\asm\dz.asm"*/
(**** 转载敬请注明-本文出处:南山古桃(nsgtao)的百度空间:ttp:///nsgtao/ ****)
⑽ExtractShortPathName()
  原型:extern PACKAGE AnsiString __fastcall ExtractShortPathName(const AnsiString FileName);
  功能:把文件名转换为DOS的8、3格式
  参数:FileName:要处理的文件名
  例:ShowMessage(ExtractShortPathName("E:\\Program Files\\Dual Wheel Mou\\"));/*显示"E:\Progra~1\dualwh~"*/
⑾MatchesMask()
  原型:extern PACKAGE bool __fastcall MatchesMask(const AnsiString Filename, const AnsiString Mask);
  功能:检查文件是否与指定的文件名格式匹配
  参数:FileName:要处理的文件名;Mask:文件名格式,支持通配符
  例:ShowMessage(MatchesMask("","*.?x?));//显示"true"

本文发布于:2023-07-23 14:07:22,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1112777.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:文件名   文件   路径   函数   功能
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图