объявление массива для хранения набора записей

Это должно ответить на вопрос. Я проигнорировал проблему прохождения подкаталогов, я предполагаю, что вы это поняли.

Конечно, для этого вам не нужно иметь отдельный метод, но вы можете найти его полезным местом, чтобы проверить, что путь действителен, и справиться с другими исключениями, с которыми вы могли столкнуться, когда вызов GetFiles ().

Надеюсь, это поможет.

private string[] GetFiles(string path)
{
    string[] files = null;
    try
    {
       files = Directory.GetFiles(path);
    }
    catch (UnauthorizedAccessException)
    {
       // might be nice to log this, or something ...
    }

    return files;
}

private void Processor(string path, bool recursive)
{
    // leaving the recursive directory navigation out.
    string[] files = this.GetFiles(path);
    if (null != files)
    {
        foreach (string file in files)
        {
           this.Process(file);
        }
    }
    else
    {
       // again, might want to do something when you can't access the path?
    }
}
0
задан Yannick Meeus 25 February 2015 в 14:25
поделиться