一串IsNullOrEmpty以组合另一个目录
本文关键字:另一个 组合 IsNullOrEmpty 一串 | 更新日期: 2023-09-27 18:24:08
我想要求找到要组合的目录名(folder1)。但如果目录不存在,我想找到另一个目录名(folder2)来组合。我应该放些什么?这里的代码:
public static string DataDirectory
{
get
{
if (string.IsNullOrEmpty(Directory))
return null;
return Path.Combine(Directory, "Data/folder1");
}
}
谢谢。
Directory.Exists应该可以正常工作
public static string DataDirectory
{
get
{
if (string.IsNullOrEmpty(Directory))
return null;
// Use Path.Combine just one time
string firstFolder = Path.Combine(Directory, "Data/folder1");
if(Directory.Exists(firstFolder)
return Path.Combine(firstFolder);
else
return Path.Combine(Directory, "Data/folder2");
}
}
您也可以执行类似的操作,首先检查是否有目录,然后使用linq对目录进行排序并选择第一个元素。
public static string GetDataDirectory(string root)
{
var directoryList = Directory.GetDirectories(root);
if (!directoryList.Any())
return null;
directoryList = directoryList.OrderBy(dir => dir).ToArray();
return directoryList.First();
}