如何得到远程文件夹下的所有文件
远程文件夹<ahref="http://192.168.0.168/Files"target="_blank">http://192.168.0.168/Files</a...
远程文件夹<a href=" http://192.168.0.168/Files" target="_blank"> http://192.168.0.168/Files</a> 已经通过IIS发布
现在我想得到Files 下所有文件的文件名。将这些文件名装入List<string> fileNames 中。
我这么写
string url="<a href=" http://192.168.0.168/" target="_blank"> http://192.168.0.168/</a>";
if(!Directory.Exists(url+"Files"))
//不管是否存在都显示不存在
{
MessageBox.Show("文件夹不存在!");
return;
}
DirectoryInfo Dir = new DirectoryInfo(url+"Files");
//这里抛出 “DirectoryInfo不支持url格式”的异常
FileInfo[] fis = Dir.GetFiles();
foreach(FileInfo file in fis)
{
.......
}
请问如何处理,最好能给个小示例。 展开
现在我想得到Files 下所有文件的文件名。将这些文件名装入List<string> fileNames 中。
我这么写
string url="<a href=" http://192.168.0.168/" target="_blank"> http://192.168.0.168/</a>";
if(!Directory.Exists(url+"Files"))
//不管是否存在都显示不存在
{
MessageBox.Show("文件夹不存在!");
return;
}
DirectoryInfo Dir = new DirectoryInfo(url+"Files");
//这里抛出 “DirectoryInfo不支持url格式”的异常
FileInfo[] fis = Dir.GetFiles();
foreach(FileInfo file in fis)
{
.......
}
请问如何处理,最好能给个小示例。 展开
2013-11-08
展开全部
第一步.对IIS进行设置,设置为允许用户查看目录的文件列表,方法:cmd->inetmgr->选择站点->属性->主目录->勾选允许目录浏览
第二步.将需要列出的目录下的默认页面删除,否则你访问的话就直接访问到默认文件了,如index.html,方法:cmd->inetmgr->选择站点->属性->文档->取消勾选允许默认文档或者删除目录下的默认文档
第三步.由于DirectoryInfo对象是不能访问远程IIS目录的,所以你不能用DirectoryInfo来实现,而是使用一个WebClient或者HttpWebRequest来获取"<a href=" http://192.168.0.168/Files/" target="_blank"> http://192.168.0.168/Files/</a>"这个地址的内容,得到的内容会列出所有的文件和目录信息,不过这是HTML的,你只需自己解析一下就可以了
第二步.将需要列出的目录下的默认页面删除,否则你访问的话就直接访问到默认文件了,如index.html,方法:cmd->inetmgr->选择站点->属性->文档->取消勾选允许默认文档或者删除目录下的默认文档
第三步.由于DirectoryInfo对象是不能访问远程IIS目录的,所以你不能用DirectoryInfo来实现,而是使用一个WebClient或者HttpWebRequest来获取"<a href=" http://192.168.0.168/Files/" target="_blank"> http://192.168.0.168/Files/</a>"这个地址的内容,得到的内容会列出所有的文件和目录信息,不过这是HTML的,你只需自己解析一下就可以了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询