从客户端Excel文件将Excel加载到应用程序中

时间:2013-10-18 20:33:10

标签: asp.net

我正在构建一个应用程序,它将存储在Excel工作表中的输入数据作为输入。我希望用户能够选择要加载数据的文件,让应用程序连接到客户机上存储的Excel文件并从中读取,然后关闭连接。如果不将Excel文件上传到服务器,我可以这样做吗?我可以做任何事情,除了使用一个文件框选择文件并传递路径&连接到Excel文件和进程的过程的文件名。我尝试过使用文件输入控件,但是我无法通过路径&文件名到连接字符串。有关我可能采取的其他路线的任何建议吗?

编辑:

应用程序主要通过单个输入到页面上的文本框或通过Excel电子表格批量上传,处理输入并以Excel格式发出报告来获取用户输入。页面上显示的唯一内容是列表框中加载的输入(通过上述两种方法),用户可以添加或删除其他项目。

1 个答案:

答案 0 :(得分:1)

简短的回答是"只有在IE中使用ActiveX控件,除非你为另一个浏览器编写自己的插件。"我的意见是,"你不应该。"

Stack Overflow已经有了很好的讨论:How to read an excel file contents on client side?

根据您提供的其他信息,长期答案是我建议以下内容:

1)将电子表格上传到服务器。 2)提取服务器上的数据。 3)以适合您情况的任何形式将数据返回给客户端。 4)清理服务器上的原始文件。

为您提供了一些进一步的建议,因为您在评论中提供了如此多的详细信息:

  • 不使用GUID生成服务器端文件名,而是使用格式为YYYY-MM-DD-HH-MM-SS-Ticks的时间戳,后跟原始文件名。
  • 每次添加文件时,都不要立即删除数据文件,而是删除N天以前的所有文件。

这样,如果将来处理文件时遇到任何问题,您就可以将上传的文件检索到开发环境并在那里进行调试。当然,假设数据不是个人信息或以其他方式敏感。

干杯!