Does Directory.GetDirectories(path) return full paths or just names?

Ed James picture Ed James · Sep 22, 2009 · Viewed 7.5k times · Source

In the MSDN documentation, it says it returns just directory names("Return Value Type: ... An array of type String containing the names of subdirectories in path."), however in their example code, they recurse without concatenating them, so does that mean they return the full paths?

i.e. their example code:

public static void ProcessDirectory(string targetDirectory) 
    {
        // Process the list of files found in the directory.
        string [] fileEntries = Directory.GetFiles(targetDirectory);
        foreach(string fileName in fileEntries)
            ProcessFile(fileName);

    // Recurse into subdirectories of this directory.
    string [] subdirectoryEntries = Directory.GetDirectories(targetDirectory);
    foreach(string subdirectory in subdirectoryEntries)
        ProcessDirectory(subdirectory);
}

would not work if the GetDirectories method only returned directory names!

Answer

Traveling Tech Guy picture Traveling Tech Guy · Sep 22, 2009

As specified in the function's MSDN page:

The names returned by this method are prefixed with the directory information provided in path [ed: the parameter to the function].