从Web目录中获取文件名和目录列表
我想通过http://
使用C#从一个Web目录中获取所有文件名和目录列表。
例如:
Directory.GetFiles(folder)**
用于从本地目录获取文件列表,就像我想从web目录获取文件列表一样。
System.IO.Directory.GetFiles(HttpContext.Current.Server.MapPath("~/PortalPage/"))
好吧 ,我不相信HTTP有一个你可以直接使用的"directory index"
。
您无法将url
传递给Directory.GetFiles
方法,此方法将url作为参数物理路径 (如果它当然可访问)。
请查看Server.MapPath
方法。
MapPath方法将指定的相对或虚拟路径映射到服务器上的相应物理目录。
路径
指定映射到物理目录的相对或虚拟路径。 如果Path以正向(/)或反斜杠()开头,则MapPath方法返回路径,就好像Path是完整的虚拟路径一样。 如果Path不以斜杠开头,则MapPath方法返回相对于正在处理的.asp文件的目录的路径。
HTTP本身没有任何function来列出文件夹中的FILE内容。 这是不可能的,因为HTTP规范不需要将URL映射到文件夹。 可编程网页的整个基础是基于URL未映射到STATIC文件。
然而。 HTTP协议有很多扩展。 WebDAV是一种用于将HTTP URI映射到某个位置的目录的协议。 在这里查看如何查询WebDAV服务以获取文件夹的内容 。
但据我所知,它无法进行递归查询。
您不能在URL上使用Directory.GetFiles
。
考虑这个例子:
string baseURL = "http://download.example.org/export/dump/"; WebClient client = new WebClient(); string content = client.DownloadString(baseURL);
然后你在里面运行一个循环。
- 将dd / MM / yyyy hh:mm:ss.fff从String转换为C#中的DateTime
- AjaxfileUpload错误
- 在没有安装Office的情况下在服务器上操作Word文档(ASP.NET)
- 使用Micorsoft.Office.Interop(对象库)通过IIS 7读取word doc时出错
- 使用www-form-urlencoded发送时,为什么我的JSON字符串在服务器端为null?
- System.Net.WebException:基础连接已关闭:连接意外关闭
- 在Repeater控件中访问文本框
- ASP.NET 5添加WCF服务引用
- 如何在没有第三方短信门的情况下使用asp.net c#从网站发送短信