Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
xlsx — SheetJS xlsx 0.18.5 分支,修复了 CVE-2023-30533 和 CVE-2024-22363 | Kitploit
工具/GitHubGitHub/weareu/xlsx
通用工具加密/解密工具数据恢复实用工具与框架
GitHubweareu/xlsx

xlsx

SheetJS xlsx 0.18.5 分支,修复了 CVE-2023-30533 和 CVE-2024-22363

查看仓库
197个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

SheetJS

SheetJS 社区版提供了经过实战检验的开源解决方案,用于从几乎任何复杂的电子表格中提取有用数据,并生成能够兼容旧版与现代软件的新电子表格。

SheetJS Pro 提供的解决方案不仅限于数据处理:轻松编辑复杂模板;发挥您的创意进行样式设计;制作包含图片/图表/数据透视表的自定义工作表;评估公式表达式并将计算移植到 Web 应用;自动化常见电子表格任务,以及更多功能!

License Build Status Snyk Vulnerabilities npm Downloads Analytics

浏览器测试与支持矩阵

Build Status

支持的文件格式

circo graph of format support

graph legend

目录

展开查看目录
  • 开始使用
    • 安装
    • 使用方法
    • SheetJS 的禅意
    • JS 生态系统演示
  • 获取与提取数据
    • 解析工作簿
    • 处理 JSON 和 JS 数据
    • 处理 HTML 表格
  • 处理数据
    • 修改工作簿结构
    • 修改单元格值
    • 修改其他工作表/工作簿/单元格属性
  • 打包与释放数据
    • 写入工作簿
    • 写入示例
    • 流式写入
    • 生成 JSON 和 JS 数据
    • 生成 HTML 表格
    • 生成单个工作表快照
  • 接口
    • 解析函数
    • 写入函数
    • 工具函数
  • 通用电子表格格式
    • 通用结构
    • 单元格对象
      • 数据类型
      • 日期
    • 工作表对象
      • 工作表对象
      • 图表工作表对象
      • 宏工作表对象
      • 对话框工作表对象
    • 工作簿对象
      • 工作簿文件属性
    • 工作簿级属性
      • 已定义的名称
      • 工作簿视图
      • 杂项工作簿属性
    • 文档特性
      • 公式
      • 行与列属性
      • 数字格式
      • 超链接
      • 单元格注释
      • 工作表可见性
      • VBA 和宏
  • 解析选项
    • 输入类型
    • 猜测文件类型
  • 写入选项
    • 支持的输出格式
    • 输出类型
  • 工具函数
    • 数组的数组输入
    • 对象数组输入
    • HTML 表格输入
    • 公式输出
    • 分隔符分隔的输出
      • UTF-16 Unicode 文本
    • HTML 输出
    • JSON
  • 文件格式
  • 测试
    • Node
    • 浏览器
    • 测试环境
    • 测试文件
  • 贡献指南
    • OSX/Linux
    • Windows
    • 测试
  • 许可证
  • 参考资料

开始使用

安装

独立浏览器脚本

完整的浏览器独立构建版本保存为 dist/xlsx.full.min.js,可以直接通过 script 标签添加到页面中:```html

<details>
  <summary><b>CDN 可用性</b>(点击显示)</summary>

|    CDN     | URL                                        |
|-----------:|:-------------------------------------------|
|    `unpkg` | <https://unpkg.com/xlsx/>                  |
| `jsDelivr` | <https://jsdelivr.com/package/npm/xlsx>    |
|    `CDNjs` | <https://cdnjs.com/libraries/xlsx>         |

例如,`unpkg` 将最新版本提供在:```html
<script src="https://unpkg.com/xlsx/dist/xlsx.full.min.js"></script>
浏览器构建 (点击展开)

完整单文件版本生成于 dist/xlsx.full.min.js

dist/xlsx.core.min.js 省略了代码页库(不支持 XLS 编码)

更精简的构建版本生成于 dist/xlsx.mini.min.js。与完整构建相比:

  • 省略了代码页库(不支持 XLS 编码)
  • 不支持 XLSB / XLS / Lotus 1-2-3 / SpreadsheetML 2003 / Numbers
  • 移除了 node 流工具

使用 bower:```bash $ bower install js-xlsx

**ECMAScript 模块**

ECMAScript 模块构建保存为 `xlsx.mjs`,可以直接通过使用 `type=module` 的 `script` 标签添加到页面中:```html
<script type="module">
import { read, writeFileXLSX } from "./xlsx.mjs";

/* load the codepage support library for extended support with older formats  */
import { set_cptable } from "./xlsx.mjs";
import * as cptable from './dist/cpexcel.full.mjs';
set_cptable(cptable);
</script>

npm 包也通过 module 参数暴露模块,在 Angular 和其他项目中被支持:```ts import { read, writeFileXLSX } from "xlsx";

/* load the codepage support library for extended support with older formats */ import { set_cptable } from "xlsx"; import * as cptable from 'xlsx/dist/cpexcel.full.mjs'; set_cptable(cptable);

**Deno**

`xlsx.mjs` 可以在 Deno 中导入。它可以从 `unpkg` 获取:```ts
// @deno-types="https://unpkg.com/xlsx/types/index.d.ts"
import * as XLSX from 'https://unpkg.com/xlsx/xlsx.mjs';

/* load the codepage support library for extended support with older formats  */
import * as cptable from 'https://unpkg.com/xlsx/dist/cpexcel.full.mjs';
XLSX.set_cptable(cptable);

NodeJS

使用 npm:```bash $ npm install xlsx

默认情况下,该模块支持 `require`:```js
var XLSX = require("xlsx");

该模块还附带 xlsx.mjs,用于与 import 一起使用:```js import * as XLSX from 'xlsx/xlsx.mjs';

/* load 'fs' for readFile and writeFile support */ import * as fs from 'fs'; XLSX.set_fs(fs);

/* load 'stream' for stream support */ import { Readable } from 'stream'; XLSX.stream.set_readable(Readable);

/* load the codepage support library for extended support with older formats */ import * as cpexcel from 'xlsx/dist/cpexcel.full.mjs'; XLSX.set_cptable(cpexcel);

**Photoshop 和 InDesign**

`dist/xlsx.extendscript.js` 是面向 Photoshop 和 InDesign 的 ExtendScript 构建版本,
包含在 `npm` 包中。可以通过 `#include` 指令直接引用:```extendscript
#include "xlsx.extendscript.js"
Internet Explorer 与 ECMAScript 3 兼容性 (点击展开)

为了与JavaScript引擎广泛兼容,该库使用ECMAScript 3语言方言以及一些ES5特性(如Array#forEach)编写。旧版浏览器需要shim来提供缺失的函数。

要使用shim,请在加载xlsx.js的脚本标签之前添加shim:```html

该脚本还包含了 `IE_LoadFile` 和 `IE_SaveFile`,用于在 Internet Explorer 6-9 中加载和保存文件。`xlsx.extendscript.js` 脚本以适合 Photoshop 和其他 Adobe 产品的格式捆绑了该垫片。

</details>

### 用法

大多数涉及电子表格和数据的场景可以分解为 5 个部分:

1) **获取数据**:数据可以存储在任何地方:本地或远程文件、数据库、HTML TABLE,甚至可以在网页浏览器中通过编程生成。

2) **提取数据**:对于电子表格文件,这涉及解析原始字节以读取单元格数据。对于一般的 JS 数据,这涉及重塑数据。

3) **处理数据**:从生成汇总统计到清理数据记录,这一步是问题的核心。

4) **打包数据**:这可以包括制作新的电子表格、使用 `JSON.stringify` 序列化、编写 XML,或者仅仅为 UI 工具展平数据。

5) **发布数据**:电子表格文件可以上传到服务器或本地写入。数据可以通过 HTML TABLE 或数据网格呈现给用户。

一个常见的问题是,如何从存储在 HTML 表格中的数据生成有效的电子表格导出。在此示例中,将抓取页面上的 HTML TABLE,在底部添加包含报告日期的行,然后生成一个新文件并尝试本地下载。`XLSX.writeFile` 负责打包数据并尝试本地下载:```js
// Acquire Data (reference to the HTML table)
var table_elt = document.getElementById("my-table-id");
下载工具