2019年4月7日 星期日

[C++]mfc路徑函式集合

引用文件: #include "shlwapi.h"
使用方式 :直接呼叫函數
ex:
TCHAR path[MAX_PATH];
::GetModuleFileName(NULL, path, _MAX_PATH);//獲取檔案路徑
PathRemoveFileSpec(path);//去除檔名

測試環境 vs2010  mfc


參考網址



路徑截斷與合併函數
GetModuleFileName 得到模組路徑名
PathRemoveArgs 去除路徑的參數
PathRemoveBackslash 去除路徑最後的反斜線“\”
PathAddBackslash  在路徑最後加上反斜線“\”
PathRemoveBlanks 去除路徑前後的空格
PathAddExtension  在檔路徑後面加上副檔名
PathRemoveExtension 去除檔路徑副檔名
PathRenameExtension 更改檔路徑副檔名
PathRemoveFileSpec 去除檔案名,得到目錄
PathUnquoteSpaces 去除路徑中的首尾空格
PathQuoteSpaces 判斷路徑中是否有空格,有的話,就是用“”引號把整個路徑包含起來
PathAppend 將一個路徑追加到另一個路徑後面
PathCombine 合併兩個路徑
PathSkipRoot 去掉路徑中的磁片符或UNC部分。
PathStripPath 去掉路徑中的目錄部分,得到檔案名。
PathStripToRoot 去掉路徑的檔部分,得到根目錄。
PathCompactPath 根據圖元值生成符合長度的路徑。
根據25圖元截斷後為:   ...\sample.txt
根據120圖元截斷後為:  C:\pat...\sample.txt
如原始路徑:          C:\path1\path2\sample.txt
PathCompactPathEx 根據字元個數來生成符合長度的路徑。
PathSetDlgItemPath 將路徑資料設置到對話方塊的子控制項上。
PathUndecorate 去除路徑中的修飾——具體還沒看明白,MSDN的例子只是去掉了括弧。
PathUnExpandEnvStrings 將路徑中部分資料替換為系統環境變數格式
   
路徑查找比較函數
PathFindOnPath 從路徑中查找路徑
PathFindExtension 查找路徑的副檔名
PathFindFileName 獲取路徑的檔案名
PathFindNextComponent 查找匹配路徑(不太熟悉)
PathFindSuffixArray 查找給定的檔案名是否有給定的尾碼。
PathGetArgs 獲取路徑參數
PathGetCharType 獲取路徑字元類型
PathGetDriveNumber 根據邏輯盤符返回驅動器序號
   
路徑轉換函數
PathRelativePathTo 創建一個路徑到另一個路徑的相對路徑。
PathResolve 將一個相對路徑或絕對路徑轉換為一個合格的路徑,這個理解起來比較拗口。
PathCanonicalize 規範化路徑。將格式比較亂的路徑整理成規範的路徑格式。
PathBuildRoot 根據給定的磁片序號創建根目錄路徑
CreateDirectory 創建目錄
GetShortPathName 將長路徑轉為8.3格式的短路徑格式
GetLongPathName 將短路徑格式轉為長路徑。
PathGetShortPath 將長路徑轉為短路徑格式(8.3格式)
PathCreateFromUrl 將URL路徑轉為MS-DOS格式
PathMakePretty 把路徑全部轉為小寫,增加可讀性。
PathMakeSystemFolder 給路徑增加系統屬性
PathUnmakeSystemFolder 去除路徑中的系統屬性。
PathMakeUniqueName 從範本創建統一的路徑格式——沒用過,不熟悉
PathProcessCommand 生成一個可執行的路徑,比如有參數的,會自動將路徑用“”包含。這在ShellExecute中比較有用。
   
路徑驗證函數
PathCleanupSpec 去除路徑中不合法的字元
PathCommonPrefix 比較並提取兩個路徑相同的首碼
PathFileExists 驗證路徑是否存在
PathMatchSpec 判斷路徑是否匹配制定的副檔名。
PathIsDirectory 判斷路徑是否是一個有效的目錄
PathIsFileSpec 驗證路徑是否一個檔案名(有可能是一個路徑)
PathIsExe 驗證路徑是否是可執行檔。注意:不僅僅是.exe,還有.bat,.com,.src等
PathIsRoot 路徑是否為根路徑
PathIsRelative 判斷路徑是否是相對路徑
PathIsContentType 檢測檔是否為制定類型。
例如:PathIsContentType( “hello.txt” , “text/plain” ) 返回TRUE
PathIsContentType( “hello.txt” , “image/gif” ) 返回FALSE
PathIsHTMLFile 判斷路徑是否是html檔案類型——根據系統註冊類型判斷。
PathIsLFNFileSpec 判斷路徑是否是長路徑格式
PathIsNetworkPath 判斷路徑是否是一個網路路徑。
PathIsPrefix 判斷路徑是否含有指定首碼
PathIsSameRoot 判斷路徑是否有相同根目錄
PathIsSlow 判斷路徑是否是一個高度延遲的網路連接——我也不太明白是啥意思。
PathIsSystemFolder 判斷路徑是否有系統屬性(屬性可以自己設定)
PathIsUNC 路徑是否是UNC格式(網路路徑)
PathIsUNCServer 路徑是否是UNC伺服器
PathIsUNCServerShare 路徑是否僅僅是UNC的共用路徑格式
PathIsURL 路徑是否是http格式。
PathYetAnotherMakeUniqueName 基於已存在的檔,自動創建一個唯一的檔案名。比較有用,比如存在“新建檔”,此函數會創建檔案名“新建檔(2)”。

沒有留言:

張貼留言

[SQL]顯示千分位與小數顯示

  CONVERT ( data_type [ ( length ) ] , expression [ , style ] ) CONVERT style參數說明 1  (expression為 money 或 smallmoney型別): 0 : 預設,保留小數位後兩位,並四捨...