如何在c#中搜索文件夹中的文件夹?

时间:2012-10-29 06:31:00

标签: c# directory datadirectory

我想检查c#中的文件夹中是否存在特定文件夹。 目前我正在使用以下代码。

        string currentPath = Directory.GetCurrentDirectory();

        foreach (string subDir in Directory.GetDirectories(currentPath))
        {
            if (subDir == currentPath + @"\Database") // if "Database" folder exists
            {
                dbinRoot = true;
            }
        }
        if (dbinRoot == true)
        {
            currentPath = currentPath + @"\Database\SMAStaff.accdb";
        }
        else
        {
            for (int i = 0; i < 2; i++)
            {
                currentPath = currentPath.Remove(currentPath.LastIndexOf("\\"));
            }
            currentPath = currentPath + "\\Database\\SMAStaff.accdb";
        }

我想知道是否有更好的方法可以做到这一点???

3 个答案:

答案 0 :(得分:4)

你可以使用:

Directory.Exists(currentPath + @"\Database")

答案 1 :(得分:0)

使用Path.Combine方法连接路径部分

也更可靠
  

if(Directory.Exists(Path.Combine(Directory.GetCurrentDirectory(),@“Database”))){}

答案 2 :(得分:0)

您可能正在寻找

currentPath = Directory.GetCurrentDirectory();
bool fileExists = File.Exists(Path.Combine(currentPath, "Database\\SMAStaff.accdb")))

for循环可能包含更好的可读性

currentPath = Directory.GetParent(currentPath).FullName;