c++ - 如何确定路径是否指定了实际文件?

标签 c++ sql c windows

我有一个函数如下:

DWORD stats = GetFileAttributesA(path);
return (stats != INVALID_FILE_ATTRIBUTES) && !(stats & FILE_ATTRIBUTE_DIRECTORY) ? 1 : 0;

问题是 SQL 连接字符串:“Driver={SQL Server Native Client 10.0};server=localhost;database=NorthWindDB;Trusted_Connection=yes;”不知何故是有效的。它返回 32(给定输入时统计信息为 32),这是 FILE_ATTRIBUTE_ARCHIVE 值。我无法过滤掉它,因为其他合法文件也会返回该值。

如何确定该值指定的是文件还是连接字符串?

更新:PathFileExists 也不起作用

最佳答案

因为所有其他方法似乎都失败了,这里有一个完全不同的方法:尝试 system("dir\"path_to_check\"") 并检查它的返回值(在我的机器上工作 :) 另请参阅system() .

关于c++ - 如何确定路径是否指定了实际文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5692009/

相关文章:

c++ - glReadPixels of color附件

蛋糕食谱的 SQL 模式和配料表

c - Opencl 数学 opencl 的新手尝试将 Octave 转换为 opencl 或 c 得到不同的结果

c - 按名称对队列进行排序不起作用

c++ - 委托(delegate)复制构造函数和常量数据初始化

c++ - QThread::msleep() 卡住程序

c++ - 在 C++ 中测量 CPU 时间

SQL Coalesce 不返回任何行

mysql - 查找两个包含空值的日期之间的 SQL 天数

使用 Inline/C 从 Perl 调用外部 C 函数(在共享库中)不起作用