如何在CLIENT的计算机上循环遍历dir中的所有文件?

时间:2015-10-06 15:13:58

标签: c# asp.net vb.net

我有一个asp.net页面,允许用户在他的计算机上选择一个excel文件,然后(1)将其上传到服务器,(2)导入到SQL服务器表中。这很好用。

现在我想增强页面功能,以允许用户在他的计算机上选择一个目录,然后在clients目录中自动上传/导入EACH文件(仅限xls,xlsx类型)。我怎样才能做到这一点? (或者,用户可以选择一个文件,然后选中“上传此目录中的所有文件”复选框,然后它将处理每个文件等。)

我找到了一种通过服务器端的目录循环的方法。但我不能为客户端解决这个问题。谢谢!

3 个答案:

答案 0 :(得分:3)

你不能。或者至少,你不应该这样做。

正确编写的浏览器专门阻止直接访问其运行的计算机的文件系统作为安全预防措施。唯一正确的"访问远程计算机上的文件的方法是使用页面上的浏览器的“文件上载”表单控件,让用户指定他们要发送给您的文件。

答案 1 :(得分:1)

基本上没有。

在浏览器安全方面取得了很多进展,阻止人们做这类事情。

主要的解决方案是使用某种本地插件来提供这种访问,但由于这可以用于许多邪恶的行为,所以现在非常不满意。

您当然可以让用户选择多个文件,有多种方法可以执行此操作 - 但您无法通过浏览器对其进行自动化。 什么阻止某人搜索' creditscards.txt'并在用户不知情的情况下上传它?

答案 2 :(得分:0)

我能想到的一种方法是Java applet。这是在本地执行的,可以完全访问计算机和浏览器。他们因为类似的原因被关闭:这不安全。

我已经概述了一种方法,但我必须强调必须避免这种情况。这不是因为