Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从单个目录下载多个文件_C#_Http_Download - Fatal编程技术网

C# 从单个目录下载多个文件

C# 从单个目录下载多个文件,c#,http,download,C#,Http,Download,我有点不知所措,所以我会试着用编造的代码来解释我要做什么 foreach file in http://host.com/directory1/directory2/ download file 这有什么意义吗?我正试图从我的网站所在的web服务器上下载指定目录中的所有文件。我知道如何一次下载一个文件,但是有数千个文件,我只希望每个文件都在一个文件夹中。隐马尔可夫模型。。。有人能给我一些建议吗 谢谢:-)据我所知,http协议没有任何用于文件列表的命令(这就是为什么有FTP文件传输协议)

我有点不知所措,所以我会试着用编造的代码来解释我要做什么

foreach file in http://host.com/directory1/directory2/
   download file
这有什么意义吗?我正试图从我的网站所在的web服务器上下载指定目录中的所有文件。我知道如何一次下载一个文件,但是有数千个文件,我只希望每个文件都在一个文件夹中。隐马尔可夫模型。。。有人能给我一些建议吗


谢谢:-)

据我所知,http协议没有任何用于文件列表的命令(这就是为什么有FTP文件传输协议)。您可以改为使用FTP连接访问目录吗?如果是这样的话,您可以改为使用FTP请求。

如果您只有http访问权限,而无法控制服务器,那么

您唯一的选择是使用一些正则表达式从响应
HTML中提取文件详细信息列表http://host.com/directory1/directory2/
这当然取决于服务器上启用的目录列表


然后,您将需要循环获取的文件名集并单独下载。

我的主机不允许FTP或脚本或任何东西。但我确实知道每个文件夹中有多少个文件

所以,我刚刚决定把它放在一个for循环中,一旦有足够数量的文件下载到我的硬盘上,我就可以摆脱这个循环了。谢谢大家的回答


这可能不是理想的解决方案,但似乎是唯一的解决方案。

对于这种情况,我通常做的是允许用户选择他们想要下载的所有文件。然后使用将文件压缩到一个存档中,我返回该文件


在这种情况下,您可能需要限制最大文件大小,具体取决于数据的大小或可压缩性。

是否有目录中所有文件的列表?是否可以控制主机?如果有,请提供平台和语言?