Delphi中文件名函数-路径、名称、子目录、驱动器、扩展名
2015-07-17 19:00
573 查看
文件名函数
文件名函数可以对文件的名称、所在子目录、驱动器和扩展名等进行操作。下表列出这些函数及其功能。
函数说明
ExpandFileName() //返回文件的全路径(含驱动器、路径)
ExtractFileExt() //从文件名中抽取扩展名
ExtractFileName() //从文件名中抽取不含路径的文件名
ExtractFilePath() //从文件名中抽取路径名
ExtractFileDir() //从文件名中抽取目录名
ExtractFileDrive() //从文件名中抽取驱动器名
ChangeFileExt() //改变文件的扩展名
ExpandUNCFileName() //返回含有网络驱动器的文件全路径
ExtractRelativePath() //从文件名中抽取相对路径信息
ExtractShortPathName() //把文件名转化为DOS的8·3格式
MatchesMask() //检查文件是否与指定的文件名格式匹配
ExtractFilePath(FileName:String) //该函数返回路径名,其结尾字符总是“\”
ExtractFileDir(FileName:String) //该函数同样返回路径名,但不包括结尾的字符“\”,除非返回的路径是根目录。
下面就把这些函数作一一介绍:
⑴ExpandFileName()
原型:extern PACKAGE AnsiString __fastcall ExpandFileName(const AnsiString FileName);
功能:返回文件的全路径(含驱动器、路径)
参数: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"
⑷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 BaseName, const AnsiString DestName);
功能:从文件名中抽取相对路径信息,如"..\sss\ss.asd"这种形式
参数:BaseName:基准文件名;DestName:目标文件名
例:ShowMessage(ExtractRelativePath("D:\\Source\\c\\1.123","D:\\Source\\Asm\\dz.asm"));/*显示"..\asm\dz.asm"*/
⑽ExtractShortPathName()
原型:extern PACKAGE AnsiString __fastcall ExtractShortPathName(const AnsiString FileName);
功能:把文件名转换为DOS的8、3格式
参数:FileName:要处理的文件名
例:ShowMessage(ExtractShortPathName("E:\\Program Files\\Dual Wheel Mouse\\4dmain.exe"));/*显示"E:\Progra~1\dualwh~1\4dmain.exe"*/
⑾MatchesMask()
原型:extern PACKAGE bool __fastcall MatchesMask(const AnsiString Filename, const AnsiString Mask);
功能:检查文件是否与指定的文件名格式匹配
参数:FileName:要处理的文件名;Mask:文件名格式,支持通配符
例:ShowMessage(MatchesMask("Lxf.exe","*.?x?));//显示"true"
文件名函数可以对文件的名称、所在子目录、驱动器和扩展名等进行操作。下表列出这些函数及其功能。
函数说明
ExpandFileName() //返回文件的全路径(含驱动器、路径)
ExtractFileExt() //从文件名中抽取扩展名
ExtractFileName() //从文件名中抽取不含路径的文件名
ExtractFilePath() //从文件名中抽取路径名
ExtractFileDir() //从文件名中抽取目录名
ExtractFileDrive() //从文件名中抽取驱动器名
ChangeFileExt() //改变文件的扩展名
ExpandUNCFileName() //返回含有网络驱动器的文件全路径
ExtractRelativePath() //从文件名中抽取相对路径信息
ExtractShortPathName() //把文件名转化为DOS的8·3格式
MatchesMask() //检查文件是否与指定的文件名格式匹配
ExtractFilePath(FileName:String) //该函数返回路径名,其结尾字符总是“\”
ExtractFileDir(FileName:String) //该函数同样返回路径名,但不包括结尾的字符“\”,除非返回的路径是根目录。
下面就把这些函数作一一介绍:
⑴ExpandFileName()
原型:extern PACKAGE AnsiString __fastcall ExpandFileName(const AnsiString FileName);
功能:返回文件的全路径(含驱动器、路径)
参数: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"
⑷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 BaseName, const AnsiString DestName);
功能:从文件名中抽取相对路径信息,如"..\sss\ss.asd"这种形式
参数:BaseName:基准文件名;DestName:目标文件名
例:ShowMessage(ExtractRelativePath("D:\\Source\\c\\1.123","D:\\Source\\Asm\\dz.asm"));/*显示"..\asm\dz.asm"*/
⑽ExtractShortPathName()
原型:extern PACKAGE AnsiString __fastcall ExtractShortPathName(const AnsiString FileName);
功能:把文件名转换为DOS的8、3格式
参数:FileName:要处理的文件名
例:ShowMessage(ExtractShortPathName("E:\\Program Files\\Dual Wheel Mouse\\4dmain.exe"));/*显示"E:\Progra~1\dualwh~1\4dmain.exe"*/
⑾MatchesMask()
原型:extern PACKAGE bool __fastcall MatchesMask(const AnsiString Filename, const AnsiString Mask);
功能:检查文件是否与指定的文件名格式匹配
参数:FileName:要处理的文件名;Mask:文件名格式,支持通配符
例:ShowMessage(MatchesMask("Lxf.exe","*.?x?));//显示"true"
相关文章推荐
- 问题-Delphi在多线程中使用其他窗体上的控件,报“尚未调用CoInitialize”解决方法
- 问题-Delphi不能进行调试模式
- 问题-Delphi编译时提示缺少delphi自己的单元文件
- 教程-Delphi7 自带控件安装对应表
- 问题-[Delphi]提示Can't load package:dclite70.bpl解决方法
- 问题-[Delphi]无法设置断点
- 问题-[Delphi7]程序在WIN7电脑上的日期错误处理
- Delphi XE8安卓(android)定位纠偏、地图简单调用、检测开启系统GPS
- 问题-[Delphi]MainFrame.pas(4340): E2036 Variable required
- 问题-[Delphi]在对GRID设置单击为编辑时,其他GRID可以,但有一个GRID不行?
- 问题-[Delphi]PixelFormat 图像颜色的数据格式
- 问题-[Delphi]SendMessageTimeout调用后卡住点击任务栏还会出现窗体处理
- 问题-[Delphi]断点后怎么设置条件
- 问题-[DelphiXE2]提示第三控件不存在
- 问题-[DelphiXE2]编译程序体积大的问题
- 问题-[delphi2007、2010]无法二次启动,报EditorLineEnds.ttr被占用,进程一直有bds.exe?
- 问题-[Delphi]通过Map文件查找内存地址出错代码所在行
- 问题-[DelphiXE7]新建的安桌模拟器运行程序闪退
- 问题-[Delphi]用LoadLibrary加载DLL时返回0的错误
- 教程-Delphi 调用控制面板设置功能