gpt4 book ai didi

c# - 我如何获取一个字符串并每次从数组中返回一个字符串?

转载 作者:太空宇宙 更新时间:2023-11-03 21:54:11 25 4
gpt4 key购买 nike

我有这个功能:

private string offline(string targetDirectory)
{
string directory = "";
try
{
string[] dirs = Directory.GetDirectories(targetDirectory,"*.*",SearchOption.TopDirectoryOnly);
for (int i = 0; i < dirs.Length; i++)
{
directory = dirs[i];
}
}
catch
{

}
return directory;

}

例如,如果 targetDirectory 是 c:\,那么我将进入数组 14 目录。现在我希望每次我离线调用该函数时,它都会返回我一次第一个字符串 c:\$Recycle.Bin然后它将返回 c:\test每次我调用该函数时,它都会返回数组中的下一个字符串。由于我使用递归函数并从递归调用此离线函数,我希望它每次返回数组中的下一个字符串。

现在它只会返回数组中的最后一个目录,仅此而已。

我该怎么做?

最佳答案

最简单的方法 - 使用 yield:

IEnumerable<string> offline(string dir)
{
...
... instead of directory = dirs[i] do
yield return dirs[i];
}

关于c# - 我如何获取一个字符串并每次从数组中返回一个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13058827/

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