读取目录c# streamreader子文件夹中的文件



我需要找到一个目录中的所有文件和所有子文件夹。我省略了FtpWebRequest。以下是我到目前为止写的内容:

 private string[] fileList () {
    StringBuilder result = new StringBuilder();
    WebResponse response = null;
    FtpWebRequest reqFtp = null;
    //makes request to ftp server
    StreamReader reader = new StreamReader(response.GetResponseStream());
    string line = reader.ReadLine();
    //reads everything in directory but does not open the subfolders    
    while (line != null)
    {
        result.Append(line);
        result.Append("n");
        line = reader.ReadLine();
    }
    result.Remove(result.ToString().LastIndexOf('n');
    return result.ToString().Split('n');
}

显示指定目录下的所有文件和文件夹。但是,我的问题是:如何读取该目录下每个子文件夹中的文件?

是否有一种方法可以检测到我已经到达一个文件夹,以便我可以将路径保存为字符串[]中的索引,并继续阅读,直到没有更多的文件夹?

我的目的是用从Ftp服务器读取的文件覆盖我本地机器上的每个文件。

有了文件和/或目录的列表后,您将不得不执行一个新的ftp请求来获取该列表中的项目。例如,如果我请求一个目录的内容并获得一个文件列表,那么您将需要遍历该列表,为每个文件发出请求。然后在循环中覆盖本地副本。你基本上会像处理本地文件一样处理它,只使用ftp请求并读取流,而你通常会打开文件并读取流。

这个问题展示了如何递归地获取当前目录和子目录中的所有文件。如何在c#中递归列出目录中的所有文件?

如果您在同一域,您可以使用UNC路径与正常的dir/file对象,并完全放弃ftp请求

相关内容

  • 没有找到相关文章

最新更新