以HTML格式输入大量文本数据

时间:2010-06-08 21:07:32

标签: html excel

我有一个网页,要求用户可以将Excel电子表格中的大量文本数据直接粘贴到页面的输入控件中。 通常,用户将粘贴在150到300个电子表格单元格中的任何位置,这些单元格都在一列中。

我可以用什么方法在网页上捕获这些数据?

感谢

2 个答案:

答案 0 :(得分:1)

我玩了几种方法,但我找到的最好的方法是从单个多行文本框开始,让用户将数据传递到该框中。它将以多行制表符分隔格式提供,您可以将其解析并放置在相应的表单字段中,或者生成表单字段。

答案 1 :(得分:1)

通过这种方式,您将面临丢失单元格格式和分离的风险,并且您可能最终会得到一堆不可解析的数据。我宁愿添加文件上传字段,以便用户可以浏览和上传Excel甚至CSV文件。在服务器端代码中,您需要读取并将上载的Excel或CSV文件解析为可用的数据元素/变量/对象,然后按照您希望的方式处理它们,例如:保存在数据库中和/或重新显示在HTML表中。

目前还不清楚你正在使用哪种服务器端编程语言/框架,但根据你的问题历史记录,我猜它是ASP.NET,所以here提示你如何处理它服务器端。


根据评论

更新

  

问题是电子表格来自各种来源且没有标准格式,因此无法解析

那么,你最好的选择就是拥有一个很大的<textarea>,然后根据换行符(\n)和制表符(\t)的存在来猜测单元格格式以及那种东西。但是,请记住格式可能取决于Excel版本和使用的webbrowser make / version。在某些情况下,它最终可能是HTML格式!当格式不可确定时,您可以考虑简单地显示错误消息。

由于大数据引起的问题是否会引发,取决于所使用的客户端和服务器。有些客户可能会在数据达到兆字节时窒息,尤其是MSIE。当提交的数据超过某个限制时服务器可能会出错,然而这个数据非常高,可以考虑一两千兆字节,但这应该可以在服务器设置中配置。您应该以任何方式使用HTTP POST方法,因为您可以在GET查询字符串中发送的数据限制在255到8K字节之间,具体取决于所使用的客户端。