PathFileExistsW 函式 (shlwapi.h)
判斷文件系統對象的路徑,例如檔案或資料夾是否有效。
語法
BOOL PathFileExistsW(
[in] LPCWSTR pszPath
);
參數
[in] pszPath
類型: LPCTSTR
長度上限之 null 終止字串的指標,MAX_PATH包含要驗證之物件的完整路徑。
傳回值
類型: BOOL
如果檔案存在,則為TRUE;否則為 FALSE。 呼叫 GetLastError 以取得擴充的錯誤資訊。 如果檔案不存在, GetLastError 會 傳回ERROR_FILE_NOT_FOUND。
備註
此函式會測試路徑的有效性。
通用命名慣例所指定的路徑 (UNC) 僅限檔案;也就是說,允許 \server\share\file。 不允許伺服器或伺服器共用的 UNC 路徑;也就是 \server 或 \server\share。 如果掛接的遠端磁碟驅動器服務不足,此函式會傳回 FALSE 。
範例
#include <windows.h>
#include <iostream.h>
#include "Shlwapi.h"
void main(void)
{
// Valid file path name (file is there).
char buffer_1[ ] = "C:\\TEST\\file.txt";
char *lpStr1;
lpStr1 = buffer_1;
// Invalid file path name (file is not there).
char buffer_2[ ] = "C:\\TEST\\file.doc";
char *lpStr2;
lpStr2 = buffer_2;
// Return value from "PathFileExists".
int retval;
// Search for the presence of a file with a true result.
retval = PathFileExists(lpStr1);
if(retval == 1)
{
cout << "Search for the file path of : " << lpStr1 << endl;
cout << "The file requested \"" << lpStr1 << "\" is a valid file" << endl;
cout << "The return from function is : " << retval << endl;
}
else
{
cout << "\nThe file requested " << lpStr1 << " is not a valid file" << endl;
cout << "The return from function is : " << retval << endl;
}
// Search for the presence of a file with a false result.
retval = PathFileExists(lpStr2);
if(retval == 1)
{
cout << "\nThe file requested " << lpStr2 << "is a valid file" << endl;
cout << "Search for the file path of : " << lpStr2 << endl;
cout << "The return from function is : " << retval << endl;
}
else
{
cout << "\nThe file requested \"" << lpStr2 << "\" is not a valid file" << endl;
cout << "The return from function is : " << retval << endl;
}
}
OUTPUT
==============
Search for the file path of : C:\TEST\file.txt
The file requested "C:\TEST\file.txt" is a valid file
The return from function is : 1
The file requested "C:\TEST\file.doc" is not a valid file
The return from function is : 0
注意
shlwapi.h 標頭會將PathFileExists定義為別名,根據UNICODE預處理器常數的定義,自動選取此函式的ANSI或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional、Windows XP [僅限桌面應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | shlwapi.h |
程式庫 | Shlwapi.lib |
Dll | Shlwapi.dll (4.71 版或更新版本) |