文件名函数  

文件名函数可以对文件的名称、所在子目录、驱动器和扩展名等进行操作。下表列出这些函数及其功能。

函数说明

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中文件名函数-路径、名称、子目录、驱动器、扩展名的更多相关文章

  1. 【转】C#路径中获取文件全路径、目录、扩展名、文件名称

    C#路径中获取文件全路径.目录.扩展名.文件名称 原文链接:https://www.cnblogs.com/JiYF/p/6879139.html 常用函数 需要引用System.IO   直接可以调 ...

  2. C#路径中获取文件全路径、目录、扩展名、文件名称

    C#路径中获取文件全路径.目录.扩展名.文件名称常用函数 需要引用System.IO 直接可以调用Path的静态方法 class Program { static void Main(string[] ...

  3. Delphi中的函数指针判断是否为空

    delphi函数指针 只有@@p才代表了函数指针本身的地址   assigned(p) 判断是否为空 或者用 @p=nil 来判断函数指针是不是为空 Delphi中的函数指针实际上就是指针,只是在使用 ...

  4. Delphi中 StrToIntDef函数的用法

    Delphi中 StrToIntDef函数的用法:比如我要判断一个文本框里输入的字符串能不能转换为integer类型,如果能,则返回转换后的整型数据,如果不能,则返回整数0,那么我就可以用strtoi ...

  5. 从字符串总分离文件路径、命名、扩展名,Substring(),LastIndexOf()的使用;替换某一类字符串,Replace()的用法

    一:从字符串总分离文件路径.命名.扩展名,上图 二:代码 using System; using System.Collections.Generic; using System.ComponentM ...

  6. C# 截取带路径的文件名字,扩展名,等等 的几种方法

    C#对磁盘IO操作的时候,经常会用到这些,路径,文件,文件名字,文件扩展名. 之前,经常用切割字符串来实现, 可是经常会弄错. 尤其是启始位置,多少个字节,经常弄晕. 下面这种方法貌似比较简便: st ...

  7. C# 选择文件、选择文件夹、打开文件(或者文件夹) 路径中获取文件全路径、目录、扩展名、文件名称 追加、拷贝、删除、移动文件、创建目录 修改文件名、文件夹名!!

    https://www.cnblogs.com/zhlziliaoku/p/5241097.html 1.选择文件用OpenDialog OpenFileDialog dialog = new Ope ...

  8. delphi中move函数的正确理解(const和var一样,都是传地址,所以Move是传地址,而恰恰不是传值)太精彩了 good

    我们能看到以下代码var pSource,pDest:PChar;     len: integer;.......................//一些代码Move(pSource,pDest,l ...

  9. Python os模块实例之遍历目录及子目录指定扩展名的文件

    需求:在该目录下有很多子目录(如下图,截图了部分),现要从该目录和所有子目录下找到所有扩展名为.meta的文件,并获取文件中第二行guid的值(': '后面的),然后将所有guid的值输出到另一文件中 ...

随机推荐

  1. Kubernetes重大漏洞?阿里云已第一时间全面修复

    近日,Kubernetes社区发现安全漏洞 CVE-2018-1002105,阿里云容器服务已在第一时间完成全面修复,敬请广大用户登录阿里云控制台升级Kubernetes版本. 目前Kubernete ...

  2. SVN——将VS项目提交至SVN时,怎样忽略bin和obj目录中的文件

    方法一: 通过设置SVN的Global ignore pattern值. 在设置了全局排除obj bin文件夹之后,需commit提交该项目,以使svn服务器应用该排除忽略 方法二: 具体实现 在解决 ...

  3. SQL语句常用优化技巧

    提高SQL语句的执行效率,最常见的方法就是建立索引,以及尽量避免全表扫描. ①.避免在where子句中使用 is null 或 is not null 对字段进行判断. 如:select id fro ...

  4. Codeforces ~ 1009C ~ Annoying Present (贪心)

    题意 一个长度为n的数组(初始全为0),进行m次操作. 操作:给你x,d,你任意挑选一个 i (1~n),每个数字加上 x+|i-j|*d( j 表示对应数字的下标) 问m次操作后的最大算术平均值为多 ...

  5. 2019 wannafly winter camp day1-4代码库

    目录 day1 F div1 爬爬爬山 (最短路) B div2 吃豆豆 (dp) J div2 夺宝奇兵(暴力) J div1 夺宝奇兵 (权值线段树) C div1 拆拆拆数 E div1 流流流 ...

  6. CSS:CSS 伪元素

    ylbtech-CSS:CSS 伪元素 1.返回顶部 1. CSS 伪元素 CSS伪元素是用来添加一些选择器的特殊效果. 语法 伪元素的语法: selector:pseudo-element {pro ...

  7. 实现Comparator接口和Comparable接口,以及Map按value排序 ,map遍历

    继承Comparator接口,重写compare()方法 import java.util.ArrayList; import java.util.Arrays; import java.util.C ...

  8. 比较器CompareTo的使用

    比较器CompareTo的使用 源码 package test; import java.text.SimpleDateFormat; import java.util.Date; public cl ...

  9. Dubbo入门到精通学习笔记(四):持续集成管理平台之Maven私有库和本地库的安装与配置

    文章目录 介绍 Maven私有库和本地库的安装与配置 Nexus安装 Nexus 配置(登录后) 介绍 如果构建的Maven项目本地仓库没有对应的依赖包,那么就会去Nexus私服去下载, 那么如果Ne ...

  10. 剑指offer——73股票的最大利润

    题目: 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?例如,一只股票在某些时间节点的价格为{9,11,8,5,7,12,16,14}.如果我们能在价格为5 ...