獲取檔案路徑(Delphi )----轉貼
ExtractFileDrive :返回完整檔名中的驅動器,如"C:"
ExtractFilePath:返回完整檔名中的路徑,最後帶“/”,如"C:test"
ExtractFileDir:返回完整檔名中的路徑,最後不帶“/” ,如"C:test"
ExtractFileName:返回完整檔名中的檔名稱 (帶副檔名),如"mytest.doc"
ExtractFileExt 返回完整檔名中的副檔名(帶.),如".doc"
ExtractRelativePath : 返回相對路徑,
[@more@]定義如下:
function ExtractRelativePath(const BaseName, DestName: string): string;
使用測試下如:
SysUtils.ExtractRelativePath('C:test','C:TestTestRelativePath'):返回TestRelativePath
SysUtils.ExtractRelativePath('C:TestTestRelativePath','C:test'):返回'..TestRelativePath'
SysUtils.ExtractRelativePath('C:TestTestRelativePath','C:test'):返回'....TestRelativePath'
ExtractShortPathName :返回短檔名,即8+3,檔名長八位,副檔名為3號,為保持DOS系統相容而存在
若想獲取的檔名不帶路徑,可用:
ChangeFileExt(TIdAttachment(Msg.MessageParts.Items[intIndex]).Filename,''); 函式將副檔名改掉即可.目前好象就這一種辦法,誰還有更好的辦法?請告知
另附其它地方的資料:
1、檔名函式
檔名函式可以對檔案的名稱、所在子目錄、驅動器和副檔名等進行操作。下表列出這些函式及其功能。
函式 說明
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:MyBCBSample1.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:WinntSOL.EXE"));//顯示"SOL.EXE"
⑷ExtractFilePath()
原型:extern PACKAGE AnsiString __fastcall ExtractFilePath(const AnsiString FileName);
功能:從檔名中抽取路徑名
引數:FileName:要處理的檔名
例:ShowMessage(ExtractFilePath("WinntSOL.EXE"));//顯示"Winnt"
⑸ExtractFileDir()
原型:extern PACKAGE AnsiString __fastcall ExtractFileDir(const AnsiString FileName);
功能:從檔名中抽取目錄名(和上個函式不同,不包括最後的"")
引數:FileName:要處理的檔名
例:ShowMessage(ExtractFileDir("WinntSOL.EXE"));//顯示"Winnt",注意和上個函式的區別
⑹ExtractFileDrive()
原型:extern PACKAGE AnsiString __fastcall ExtractFileDrive(const AnsiString FileName);
功能:從檔名中抽取驅動器名
引數:FileName:要處理的檔名
例:ShowMessage(ExtractFileDrive("c:WinntSOL.EXE"));//顯示"c:"
⑺ChangeFileExt()
原型:extern PACKAGE System::AnsiString __fastcall ChangeFileExt(const System::AnsiString FileName, const System::AnsiString Extension);
功能:更改檔名的副檔名,不是對真正的檔案進行改名,只是對檔名這個字串進行處理
引數:FileName:要改名的檔名,Extension:新的副檔名
例:ShowMessage(ChangeFileExt("c:WinntSOL.EXE",".OOO"));//顯示"c:winntSOL.OOO"
⑻ExpandUNCFileName()
原型:extern PACKAGE AnsiString __fastcall ExpandUNCFileName(const AnsiString FileName);
功能:返回含有網路驅動器的檔案全路徑,格式為:機器名共享名檔名
引數:FileName:要處理的檔名
例:ShowMessage(ExpandUNCFileName("F:WinntSOL.EXE"));/*如果F:是對映的網路驅動器,則顯示"
⑼ExtractRelativePath()
原型:extern PACKAGE AnsiString __fastcall ExtractRelativePath(const AnsiString BaseName, const AnsiString DestName);
功能:從檔名中抽取相對路徑資訊,如"..sssss.asd"這種形式
引數:BaseName:基準檔名;DestName:目標檔名
例:ShowMessage(ExtractRelativePath("D:Sourcec1.123","D:SourceAsmdz.asm"));/*顯示"..asmdz.asm"*/
⑽ExtractShortPathName()
原型:extern PACKAGE AnsiString __fastcall ExtractShortPathName(const AnsiString FileName);
功能:把檔名轉換為DOS的8、3格式
引數:FileName:要處理的檔名
例:ShowMessage(ExtractShortPathName("E:Program FilesDual Wheel Mouse4dmain.exe"));/*顯示"E:Progra~1dualwh~14dmain.exe"*/
⑾MatchesMask()
原型:extern PACKAGE bool __fastcall MatchesMask(const AnsiString Filename, const AnsiString Mask);
功能:檢查檔案是否與指定的檔名格式匹配
引數:FileName:要處理的檔名;Mask:檔名格式,支援萬用字元
例:ShowMessage(MatchesMask("Lxf.exe","*.?x?));//顯示"true"
本文來自CSDN部落格,http://blog.csdn.net/chinmusam/archive/2009/12/23/5060927.aspx
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/38085/viewspace-1050745/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- c#檔案路徑的獲取C#
- help:如何獲取類檔案的路徑
- 獲取絕對路徑 【檔案找不到】
- 5招輕鬆獲取Mac檔案路徑Mac
- delphi讀取ini檔案 (轉)
- iOS中獲取各種檔案的目錄路徑的方法(轉)iOS
- 獲取當前js檔案被引用的路徑JS
- 如何獲取 vue 單檔案自身原始碼路徑Vue原始碼
- Xamarin Essentials教程獲取路徑檔案系統FileSystem
- 獲取沙盒檔案路徑的兩種方法
- Java中的獲取檔案的物理絕對路徑,和讀取檔案Java
- C# Winform中如何獲取檔名與檔案路徑C#ORM
- js獲取專案根路徑JS
- FileUpload 上傳的檔案獲取相對路徑
- Python如何獲取當前執行檔案路徑?Python
- SpringBoot 中獲取專案的路徑和檔案流Spring Boot
- java獲取專案路徑工具類Java
- python獲取指定目錄所有檔案絕對路徑Python
- nodejs遞迴資料夾獲取所有檔案路徑NodeJS遞迴
- 怎樣獲取Torque.properties檔案的絕對路徑?
- 獲取絕對路徑下的檔名和檔案字尾方法
- 定義樣式並獲取上傳檔案路徑及指定檔案型別型別
- jboss 獲取web專案真實路徑Web
- python獲取程式執行檔案路徑的方法其一Python
- Mac進階必看:如何利用Automator快速獲取檔案路徑Mac
- IOS中獲取各種檔案的目錄路徑的方法iOS
- Java中獲取JAR檔案中資源路徑的三種方法JavaJAR
- linux獲取docker容器中的檔案路徑怎麼表示LinuxDocker
- java操作Properties屬性檔案及獲取專案部署伺服器路徑Java伺服器
- C# 獲取專案程式路徑的方法C#
- 【Django】檔案讀取時路徑問題Django
- Matlab - 獲取和儲存檔案路徑選擇對話方塊Matlab
- Unity 編輯器中獲取選中的資料夾、檔案路徑Unity
- win10怎麼獲取當前目錄_win10系統如何快速獲取檔案路徑Win10
- Java 最佳化:讀取配置檔案 "萬能方式" 跨平臺,動態獲取檔案的絕對路徑Java
- c# 讀取多個路徑檔案到一個檔案
- PHP 常用獲取路徑程式碼PHP
- svg獲取路徑的長度SVG