我正在尝试在浏览器中显示.xls文件数据(例如,ff,chrome和safari)作为网络内容。
问题是我的计算机中有一个.xls文件,我将在xls文件中进行所有数据操作,并希望其中的数据在浏览器中显示,以便其他人在网页中看到内容。
我正在计划使用javascript,任何人都可以帮我这个吗?我几乎尝试了所有可能的方法和许多网站上关于这种程序的所有帖子,但不适合我的想法。如果有人让我摆脱这个问题,我真的很高兴。
答案 0 :(得分:1)
你几乎肯定要在服务器端进行这种转换。客户端javascript即使不是不可能也会很棘手,因为XLS文件不是HTML,因此不能在其中包含<script>
标签来告诉浏览器该做什么。您可以将XLS嵌入到iframe中,并让JS对其进行操作,但iframe可能很难处理,并且在HTML 5中已弃用(据我所知)。即使这可以干净利落地工作,但仍然听起来不像原始文档的客户端处理是个好主意。
因此,第一步是调查您可用的服务器端技术(例如PHP,JSP,ASP)。第二步是找到能够打开和读取XLS文件的这些技术之一的库(不是简单的任务)。然后第三步是编写所需的代码来打开您的XLS文件,提取所需的信息并将其输出为HTML。 (这可能有助于将第三步视为将 XLS输入转换为HTML输出,这正是您尝试做的事情。)
答案 1 :(得分:0)
我知道的唯一方法是将文件设置为iframe标记的文档源,但是从版本5开始,此元素将从HTML中删除。无论如何,您的浏览器必须支持在浏览器窗口中显示这些文档。
答案 2 :(得分:0)
以下是使用这个出色的Excel C#组件在Excel ASP.NET应用程序中将Excel导入DataTable的代码段:
private void Page_Load(object sender,System.EventArgs e) { var ef = new ExcelFile(); ef.LoadXls(使用Server.Mappath( “../ ExcelData.xls”));
//初始化DataTable(如果您有DataTable定义,请跳过此步骤) var dt = new DataTable(); dt.Columns.Add(“name”,typeof(string)); dt.Columns.Add(“birth”,typeof(DateTime));
var ws = ef.Worksheets [0];
//将数据提取到DataTable ws.ExtractToDataTable(dt,ws.Rows.Count,ExtractDataOptions.StopAtFirstEmptyRow,ws.Rows [0],ws.Columns [0]);
DataGrid1.DataSource = dt.DefaultView; DataGrid1.DataBind(); }
答案 3 :(得分:0)
是不是可以选择将xls作为HTML文档从Excel中保存出来?