我正在尝试编写一个小型网络工具,它接受 Excel 文件,解析内容,然后将数据与另一个数据集进行比较。这可以用 JavaScript 轻松完成吗?有没有一个 JavaScript 库可以做到这一点?

有帮助吗?

解决方案

首先如何将文件加载到JavaScript中?

此外,Excel是一种专有格式,其复杂性足以使服务器端库经过多年的开发(例如 Apache POI )尚未设法正确100%反向工程这些Microsoft格式。

所以我认为答案是你不能。

更新:这是纯JavaScript。

更新2:现在可以在JavaScript中加载文件: https://developer.mozilla.org/en-US/docs/DOM/FileReader

其他提示

在过去的四年里,取得了许多进步。HTML5 文件 API 已被主要浏览器供应商所接受,性能增强实际上使得在浏览器中解析 excel 文件(xls 和 xlsx)成为可能。

我在此空间的条目:

两者都是纯 JS 解析器

要在js中执行所有操作,您必须使用ActiveX,也可能使用Office Web组件。只是一个建议,但你可能不想走这条路;这将是效率低下的IE / Win。使用基于服务器的解决方案会更好。

您将需要使用ActiveX(请参阅W3C Schools使用AJAX)并在托管计算机Dataconnectors(仅托管该文件的计算机)中注册该文件。与之前提到的不同,此方法不依赖于Microsoft平台(无论如何都适用于客户端),并且您不需要安装Office组件。

对于在Windows中注册的大多数数据文件(包括MDB),可以执行此操作,并且可以根据需要进行尽可能多的控制,因为您可以为不同目的分配不同的Windows帐户。

就像我之前说过的,除了可能检索凭据,操作以及所有这些之外,这一切都是服务器端并且对客户端没有影响。

此方法使用JavaScript,SQL(不,甚至不是MSSQL,只是SQL标准),并且只要求托管计算机正在运行任何Microsoft NT平台。

Windows数据连接器所做的是为各种数据组件提供通用接口,就像DirectX对视频卡和其他外围设备一样。您还可以使用它将MDB(Microsoft Access)链接到MySQL服务器并以这种方式直播数据,我认为这比使用XLS电子表格更简单...特别是因为您可以将XLS导入MDB。

真的需要一个Excel文件吗?为什么不使用Excel以CSV或XML格式导出数据并加载?

Excel文件格式非常特定于Excel的实现。如果您只需要数据,请使用仅包含数据的文件格式。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top