文件名函数  

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

函数说明

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. luoguP2590 [ZJOI2008]树的统计 [树链剖分] [TLE的LCT]

    题目描述 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w. 我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. QMAX u ...

  2. 【LeetCode 4】寻找两个有序数组的中位数

    题目链接 [题解] 假设在两个有序的序列中找第k小的数字. 那么我们先定位第一个序列中的第k/2个数字(不足则取最边上的那个数字)记下标为i1 然后定位第二个序列中的第k/2个数字(同样不足则取最边上 ...

  3. Delphi 2010 XE 中使用 JSON 之 SuperObject68-6

    JSON之SuperObject(1):一直盼着Delphi能够直接支持"正则:Delphi2009刚来的时候,有了JSON,但:Delphi2010带了两个相关单元:DBXJS:我想不等了 ...

  4. SP8222 NSUBSTR - Substrings(后缀自动机+dp)

    传送门 解题思路 首先建出\(sam\),然后把\(siz\)集合通过拓扑排序算出来.对于每个点只更新它的\(maxlen\),然后再从大到小\(dp\)一次就行了.因为\(f[maxlen-1]&g ...

  5. tomcat 相关异常

    端口没有被占用却提示Several ports (8005, 8080, 8009) required by Tomcat??? 解决办法:1.运行cmd进入命令行界面:2.运行命令: netsh w ...

  6. C++——代码风格

    google代码风格 1.使用安全的分配器(allocator),如scoped_ptr,scoped_array 2.测试用的,其他的不能用: 2.1 友元 2.2 C++异常 2.3 RTTI 3 ...

  7. jQuery 封装的ajax

    jquery封装的ajax 具体操作: $.get(url  [,data]  [,fn回调函数]   [, dataType]); data:给服务器传递的数据,请求字符串 .json对象 都可以设 ...

  8. 剑指offer——46数字序列中某一位的数字

    题目: 数字以0123456789101112131415…的格式序列化到一个字符序列中.在这个序列中,第5位(从0开始计数)是5,第13位是1,第19位是4,等等.请写一个函数,求任意第n位对应的数 ...

  9. jquery 临时存值

    function toSort(orderBy) { if (orderBy == $('#orderBy').data("order")) {// 再次点击同一个排序时 $('# ...

  10. gitlab开机启动|启动 停止 重启

    修改配置后的初始化 gitlab-ctl reconfigure 启动 sudo gitlab-ctl start 停止sudo gitlab-ctl stop 重启sudo gitlab-ctl r ...