Skip to main content

使用 Nexe 的电子表格工具

nexe[^1] 是一种用于生成嵌入脚本的命令行工具的工具。

¥nexe[^1] is a tool for generating command-line tools that embed scripts.

SheetJS 是一个用于从电子表格读取和写入数据的 JavaScript 库。

¥SheetJS is a JavaScript library for reading and writing data from spreadsheets.

此演示使用 nexe 和 SheetJS 创建独立的 CLI 工具,用于解析电子表格并转换为其他格式。

¥This demo uses nexe and SheetJS to create a standalone CLI tool for parsing spreadsheets and converting to other formats.

最新的预构建包与 NodeJS 版本 14.15.3 匹配。

¥The latest prebuilt package matches NodeJS version 14.15.3.

nexe 可以为较新的 NodeJS 版本构建所需的包。

¥nexe can build the required packages for newer NodeJS versions.

测试部署

该演示在以下部署中进行了测试:

¥This demo was tested in the following deployments:

架构版本NodeJS来源日期
darwin-x644.0.0-rc.614.15.3预建2024-05-28
darwin-arm4.0.0-rc.618.20.3已编译2024-05-25
win10-x644.0.0-rc.414.15.3预建2024-04-18
win11-arm4.0.0-rc.620.10.0已编译2024-05-28
linux-x644.0.0-rc.414.15.3预建2024-03-21
linux-arm4.0.0-rc.618.20.3已编译2024-05-26

集成详情

¥Integration Details

SheetJS NodeJS 模块 可以从脚本中需要。nexe 将自动处理打包。

¥The SheetJS NodeJS module can be required from scripts. nexe will automatically handle packaging.

脚本要求

¥Script Requirements

专门使用 SheetJS 库和 NodeJS 内置模块的脚本可以使用 nexe 进行打包。

¥Scripts that exclusively use SheetJS libraries and NodeJS built-in modules can be bundled using nexe.

演示脚本 xlsx-cli.js 在 NodeJS 中运行。这是一个用于读写电子表格的简单命令行工具。

¥The demo script xlsx-cli.js runs in NodeJS. It is a simple command-line tool for reading and writing spreadsheets.

完整示例

¥Complete Example

  1. 下载测试文件 https://xlsx.nodejs.cn/pres.numbers

    ¥Download the test file https://xlsx.nodejs.cn/pres.numbers:

curl -o pres.numbers https://xlsx.nodejs.cn/pres.numbers
  1. 下载 xlsx-cli.js

    ¥Download xlsx-cli.js

curl -o xlsx-cli.js https://xlsx.nodejs.cn/cli/xlsx-cli.js
  1. 安装依赖:

    ¥Install the dependencies:

yarn add https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz exit-on-epipe commander@2
  1. 创建独立程序:

    ¥Create the standalone program:

npx nexe -t 14.15.3 xlsx-cli.js
Building from source (click to hide)

当在 ARM 目标上测试演示时,Nexe 预构建包丢失。对于不受支持的 NodeJS 版本,必须从源代码构建包:

¥When the demo was tested on ARM targets, the Nexe pre-built packages were missing. For unsupported NodeJS versions, packages must be built from source:

npx nexe xlsx-cli.js --build --python=$(which python3) --make="-j8"

这会根据平台生成 xlsx-clixlsx-cli.exe

¥This generates xlsx-cli or xlsx-cli.exe depending on platform.

  1. 运行生成的程序,将 pres.numbers 作为参数传递:

    ¥Run the generated program, passing pres.numbers as the argument:

./xlsx-cli pres.numbers

[^1]: 该项目没有网站。源存储库 是公开可用的。

¥The project does not have a website. The source repository is publicly available.

[^2]: NodeJS 网站托管 预构建安装程序

¥The NodeJS website hosts prebuilt installers.