gpt4 book ai didi

vb.net - VB.NET 中的递归文件搜索

转载 作者:行者123 更新时间:2023-12-04 01:45:14 31 4
gpt4 key购买 nike

我有一个函数可以对文件进行递归目录搜索,但是当我搜索驱动器时,出现访问被拒绝错误,从而停止搜索。我怎样才能避免这些错误?

这是我使用的函数:

lstSearch = GetFilesRecursive(FolderBrowserDialogMain.SelectedPath)

Private Function GetFilesRecursive(ByVal path As String) As List(Of String)
Dim lstResult As New List(Of String)
Dim stkStack As New Stack(Of String)
stkStack.Push(path)
Do While (stkStack.Count > 0)
Dim strDirectory As String = stkStack.Pop
Try
lstResult.AddRange(Directory.GetFiles(strDirectory, "*.mp3"))
Dim strDirectoryName As String
For Each strDirectoryName In Directory.GetDirectories(strDirectory)
stkStack.Push(strDirectoryName)
Next
Catch ex As Exception
End Try
Loop
Return lstResult
End Function

感谢任何解决方案。

最佳答案

感谢您提供的代码,它有效,但仔细查看后,我发现这一行就可以完成这项工作:

myfiles = IO.Directory.GetFiles(strpath, "*.*", IO.SearchOption.AllDirectories)

只是将搜索选项从 TopDirectoryOnly 更改为 AllDirectories。我总是希望使用 native 函数。

关于vb.net - VB.NET 中的递归文件搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44103640/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com