You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VB.NET如何判断路径含可变未知部分的指定文件是否存在

错误原因分析
  • 你对VBA Dir 函数的参数用法理解有误,这是报错的核心原因,并非通配符使用错误:
    Dir 函数的标准语法为 Dir([pathname], [attributes]),第一个参数是完整的路径+文件名匹配规则,第二个参数是可选的文件属性参数,你错误地把路径后缀和文件名规则拆成了两个独立参数传入,相当于把文件名匹配规则传给了本应接收属性值的第二个参数,自然会触发运行错误。
  • 你在代码末尾加的(0)下标也是错误用法:Dir 函数返回的是符合规则的第一个文件名的字符串,不是数组,不需要加下标取值。
修正后的代码示例
' 先拼接完整的匹配路径
Dim searchPattern As String
searchPattern = ProjectsFolder & ComboBox_ProjectType.Text & "\" & ProjectNumber & "\" & ProjectNumber & "_Rokasgramata\" & ProjectNumber & "*User Manual*.pdf"

If Dir(searchPattern) = "" Then
    ' 文件不存在的逻辑
Else
    ' 文件存在的逻辑
End If
额外注意事项
  • 如果路径中可能存在中文或特殊字符,建议拼接完成后先Debug输出searchPattern确认路径是否符合预期,避免路径拼接错误导致匹配不到文件。
  • 如果需要匹配多个符合规则的文件,第一次调用Dir拿到第一个结果后,后续循环调用无参数的Dir即可拿到下一个匹配结果,直到返回空字符串。

内容的提问来源于stack exchange,提问作者Eduards

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 07:45:04