我目前在asp.net上工作我通过上传文件处理文件上传,但我想浏览文件夹而不是文件并获取其中的所有文件并获取foldername并在服务器中创建foldername并将文件上传到服务器。请给我一些推荐并帮助我做到这一点。 我的目标是当我浏览该文件夹时,其中存在的所有文件都应该上传。只有文件才能上传而不是文件夹 注意:要浏览文件夹而不是文件。
答案 0 :(得分:1)
实际上你应该提出一个问题,如果你想要一个答案,但看起来你对此是全新的,所以这里有一些你应该知道的asp.net和文件夹/文件处理:
您的虚拟路径始终对应于您的网络服务器上的本地路径。因为你可能想要从映射开始硬编码是不好的。 (例如 / uploads / to _C:\ intepub \ application \ uploads)
“并获取foldername”
string localpath = Server.MapPath("/uploads");
“并在服务器中创建foldername”
接下来你可以检查该文件夹是否已经存在,或者如果没有 - 创建它。
if(!System.IO.Directory.Exists(localpath))
System.IO.Directory.Create(localpath))
请记住,您的IIS用户需要创建新目录的权利
现在您已确保上传目录存在,您可以上传/下载文件。这是一个很好的入门教程:
“并将文件上传到服务器”
http://msdn.microsoft.com/en-us/library/aa479405.aspx
“但我希望浏览文件夹而不是文件并获取所有文件”
您可以在服务器上执行此操作,而不是客户端。您的asp.net代码从不在客户端上执行。
string[] filenames = System.IO.Directory.GetFiles(localpath);
“我的目标是当我浏览该文件夹时,其中存在的所有文件都应上传”
那个不是那么容易,对不起。这会给用户带来严重的安全风险。
也许这会指出你正确的方向(显然它适用于Chrome)
How do I use Google Chrome 11's Upload Folder feature in my own code?
一般来说,对于文件,目录,文件路径等,我建议仔细看看这些类: