如何从web获取目录文件名

时间:2013-03-11 11:00:20

标签: c# .net winforms

我想阅读网络目录文件。 当我使用此代码时。

string[] files;
string webfilepath = "http://www.anydomain.com/templates/images";
files = Directory.GetFiles(webfilepath, @"*.*", SearchOption.TopDirectoryOnly);

代码显示错误的url格式不支持。还有其他任何方式来读取web目录。  提前谢谢。

3 个答案:

答案 0 :(得分:1)

  

有没有其他方法可以阅读网页目录

没有。 HTTP没有您可以检索的“目录索引”,除非服务器(或其上运行的软件)自己生成它,例如Apache的Options +Indexes配置。但是那个索引是用HTML生成的,你必须解析它以获得完整的文件名。

答案 1 :(得分:0)

您正尝试将url传递给Directory.GetFiles而不是传递文件夹的物理路径,如果可以访问,则可以使用Server.MapPath获取网址的物理路径,即代码访问文件夹正在机器URL上运行指向。如果网址在不同的计算机上,则无法使用Directory.GetFiles

答案 2 :(得分:0)

你不能以通用的方式做到这一点。因为它取决于Web服务器如何将目录内容转储到客户端上,如果它完全这样做的话。

首先,您需要确保服务器使用某些协议发送内容。然后你可以使用HttpWebRequest发送HTTP请求并获得结果。你必须在一天结束时对结果进行自己的解析。