`
lovnet
  • 浏览: 6920135 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

判断一个路径串是否为有效目录

阅读更多

判断一个路径串是否为有效目录,对一个给定的字符串sPath,我们需要判断这个字符串是否为有效目录,下面介绍了三种方法:
1
检察FILE_ATTRIBUTE_DIRECTORY位操作结果值,可以使用函数GetFileAttributes或者结构

WIN32_FIND_DATA。
WIN32_FIND_DATA wfd;
FindFirstFile(sPath,&wfd);
if(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY == FILE_ATTRIBUTE_DIRECTORY )
{
printf("it is a dir");
}
或者是:
DWORD dwAttrs;
dwAttrs = GetFileAttributes(FileData.cFileName);
if (dwAttrs & FILE_ATTRIBUTE_READONLY)
{
printf("it is a dir");
}

2
//函数作用:判断目录是否存在
//函数参数:目录字符串
//函数返回值:目录存在返回true,否则false
bool dirExists(CString sPath)
{
//创建一个指定的全路径目录,失败就返回false
TCHAR* fullPath = _tfullpath (NULL, sPath, 0);
if (fullPath == NULL)
return false;
//通过设置fullPath为默认目录来检测是否存在
Check if directory exists by trying to make it the default directory
TCHAR szCurrDir[_MAX_PATH];
_tgetcwd(szCurrDir, _MAX_PATH-1); //返回当前工作目录
long nStatus = _tchdir(fullPath); //改变当前工作目录
_tchdir(szCurrDir); //返回
free(fullPath);
if (nStatus == 0)
return true;
return false;
}

3
利用shlwapi.dll的导出函数PathIsDirectory。函数的参数就是判断字符串,成功为返回TRUE,否则FALSE。

这个算不上文章,一点总结和大家共享!还请轻点BT。

分享到:
评论

相关推荐

    JS判断是否为windows文件路径

    下面是一个简单的JavaScript函数示例,用于判断字符串是否为有效的Windows文件路径: ```javascript function isWindowsFilePath(path) { const regex = /^[a-zA-Z]:\\/i; // 检查是否以盘符开头 if (!regex.test...

    instr()函数功能,判断目标字符串是否存在于第一个字符串中

    它能够帮助开发者判断目标字符串是否存在于第一个字符串中,并返回目标字符串的起始位置。如果目标字符串不存在,则返回0。 这个函数的基本语法通常是 `instr([start,] string1, string2[, compare])`,其中: - `...

    判断文件夹是否为空的子函数

    // 首先判断路径是否为文件夹 if (!PathIsDirectory(strPath)) { // 如果不是文件夹,则返回-1表示路径无效 return -1; } // 构造搜索字符串 TCHAR strSeedName[MAX_PATH] = {0}; _tcscpy_s(strSeedName, ...

    C#路径文件目录IO常见操作汇总.

    - 使用`Directory.Exists()`或`File.Exists()`方法来判断路径是否存在并确定它是文件还是目录。 - 如果路径不存在,可以采用`Path.GetFileName()`方法来获取路径末尾的文件名。若文件名为空,则路径可能代表一个...

    绝对路径和相对路径 文件目录IO常见操作汇总

    这种方式更加灵活,尤其是在需要将项目从一个位置移到另一个位置时更为实用。例如,如果当前工作目录为 `C:\Documents\`, 那么相对路径 `MyFolder\MyFile.txt` 实际指向的就是 `C:\Documents\MyFolder\MyFile.txt`。...

    C#路径文件目录IO常见操作汇总

    使用`Path.GetInvalidPathChars()`或`Path.GetInvalidFileNameChars()`可以获取非法路径或文件名字符,通过遍历路径字符串检查是否存在这些字符,从而判断路径是否有效。 2. **路径类型识别** 可以通过`Directory...

    C#路径,文件,目录及IO常见操作汇总

    问题1:如何判定一个给定的路径是否有效/合法; 通过Path.GetInvalidPathChars或Path.GetInvalidFileNameChars方法获得非法的路径/文件名字符,可以 根据它来判断路径中是否包含非法字符; 问题2:如何确定一个路径...

    .net路径文件目录IO常见操作汇总

    判断路径的有效性** - 使用`Path.GetInvalidPathChars()`和`Path.GetInvalidFileNameChars()`方法可获取非法路径或文件名字符列表,以此检查给定路径是否包含这些字符。 - 对于不存在的路径,可以通过尝试调用`...

    labview 生成EXE路径问题

    默认情况下,LabVIEW会将EXE视为一个新的顶层目录,这就意味着原本相对于VI的相对路径在执行EXE时可能不再有效。例如,如果一个VI在调试时引用了同目录下的某个文件,那么在生成EXE后,这个文件必须被放置在EXE所在...

    URL的又有效性判断

    在提供的代码片段中,我们可以看到一种简单的URL有效性判断方法,即通过尝试创建一个`URL`对象并打开其对应的输入流来判断该URL是否可达。这种方法的基本思想是:如果能够成功创建`InputStream`,则说明该URL是有效...

    c获取路径.

    - **Path.IsPathRooted**: 判断路径是否包含根目录信息,如盘符或网络共享路径。 #### 当前目录操作 - **Directory.GetCurrentDirectory**: 获取当前目录。 - **Directory.SetCurrentDirectory**: 设置当前目录。 ...

    判断程序是否在U盘上运行的

    在易语言中,这可以通过调用“获取当前程序路径”函数实现,这个函数会返回一个字符串,表示程序的完整执行路径。然后,我们需要对这个路径进行解析,以确定它是否位于U盘的根目录下。 通常,U盘的驱动器字母在...

    matla路径规划城市遍历机器人路径等问题精讲:10 深入学习字符串.zip

    9. **字符串函数**:MATLAB有一系列字符串函数,如`upper`和`lower`用于大小写转换,`isstrprop`检查字符串属性,`ischar`判断是否为字符串等。 在城市遍历问题中,可能需要处理的字符串数据包括城市名称、坐标、...

    判断是否为网址的软件源码

    在软件开发过程中,经常会遇到需要判断一个字符串是否为有效网址的需求。本源码提供了一个简单实用的方法来实现这一功能。 #### 1.1 VBScript与正则表达式的结合 - **VBScript**:一种轻量级的脚本语言,通常用于...

    C#检查字符串是否是合法URL地址的方法

    为了更准确地判断一个字符串是否为有效的URL,我们需要考虑更多的URL规范。 首先,理解URL的基本结构是非常重要的。一个标准的URL通常包括以下部分: 1. **协议**(Protocol):如 "http://" 或 "https://" 2. **...

    如何判断文件或文件夹是否存在

    `Directory.Exists()`接受一个表示目录路径的字符串,并返回`true`或`false`,表示目录是否真实存在。 除了基本的文件和目录检查,你可能还需要处理更复杂的情况,比如在多个路径或动态生成的路径中查找。这时,你...

    C#中文件路径相关操作

    通过遍历路径字符串并检查其中是否包含这些非法字符,我们可以判断路径是否有效。 其次,区分路径表示的是文件还是目录。通常情况下,我们可以使用`Directory.Exists()`和`File.Exists()`方法。如果`Directory....

    java文件路径操作详细(转载)

    `getPath()`返回整个路径字符串,`getName()`获取最后一个路径元素,`getParent()`获取父路径。 5. **文件操作**: - `createNewFile()`: 创建新文件,如果文件已存在则抛出异常。 - `mkdir()` 和 `mkdirs()`: ...

    path_test.rar_获取路径

    2. **File类的构造函数**:创建File对象时,通常会传入一个字符串参数,这个字符串是文件或目录的路径。例如,`File file = new File("test.txt");` 3. **getPath()方法**:返回文件对象表示的路径字符串。如果你...

    检查可用的串口

    1. **函数定义**:`BOOL CAdjust::CheckSerial(const CString strComm)`,这是一个名为`CheckSerial`的成员函数,它接受一个`CString`类型的参数`strComm`,表示要检查的串口号。 2. **参数验证**:首先检查传入的...

Global site tag (gtag.js) - Google Analytics