SheetJS js-xlsx

资讯 2024-06-24 阅读:77 评论:0
美化布局示例

欧易(OKX)最新版本

【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   全球官网 大陆官网

币安(Binance)最新版本

币安交易所app【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   官网地址

火币HTX最新版本

火币老牌交易所【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   官网地址

SheetJS是用于多种电子表格格式的解析器和编写器。通过官方规范、相关文档以及测试文件实现简洁的JS方法。SheetJS强调解析和编写的稳健,其跨格式的特点和统一的JS规范兼容,并且ES3/ES5浏览器向后兼容IE6。
目前这个是社区版,我们也提供了性能增强的专业版,专业版提供样式和专业支持的附加功能。

SheetJS is a condenser and writer for a variety of spreadsheet formats. A simple JS method is achieved through official specifications, related documents, and testing documents. SheetJS emphasizes the soundness of dissecting and writing, its cross-format features are compatible with harmonized JS norms, and the ES3/ES5 browser is back-to-back compatible with IE6.
, which is now a community version, and we also provide an enhanced professional version, which provides additional features for styles and professional support.

专业版

商业支持

Business support

介绍文档

Introduction Document

浏览器示例

example of browser

源码

source

问题和错误报告

questions and bug reports

常见的支持问题

common support questions

支持的电子数据表的文件格式:

支持格式的图表 (点击查看) circo graph of format support graph legend

浏览器测试

browser test

Build Status

Build Status Build Status Coverage Status Dependencies Status npm Downloads ghit.me Analytics

点击展示目录表 - 安装 JS 生态示例 可选模块 ECMAScript 5 兼容性 - 原理 - 解析工作簿 解析示例 流式读取 - 操作工作簿 解析和编写示例 - 编写工作簿 编写示例 流式写入 - 接口 解析函数 编写函数 工具函数 - 常用电子表格的格式 一般结构 单元格对象 + 数据类型 + 日期类型 数据表对象 + 工作表对象 + 图表对象 + 宏对象 + 对话表对象 工作簿对象 + 工作簿的文件属性 工作簿级别的属性 + 定义名称 + 查看工作表 + 其他的工作簿属性 文档特点 + 公式 + 列属性 + 行属性 + 数字格式化 + 超链接 + 单元格注释 + 表的可见性 + VBA和宏命令 - 解析选项 输入类型 猜测文件类型 - 编写选项 支持的输出格式 输出类型 - 工具函数 数组输入 对象输入 HTML Table 输入 公式输出 分隔符输出 + UTF-16 Unicode 文本 HTML 输出 JSON - 文件格式 Excel 2007+ XML (XLSX/XLSM) Excel 2.0-95 (BIFF2/BIFF3/BIFF4/BIFF5) Excel 97-2004 Binary (BIFF8) Excel 2003-2004 (SpreadsheetML) Excel 2007+ Binary (XLSB, BIFF12) Delimiter-Separated Values (CSV/TXT) 其它的工作簿格式 + Lotus 1-2-3 (WKS/WK1/WK2/WK3/WK4/123) + Quattro Pro (WQ1/WQ2/WB1/WB2/WB3/QPW) + OpenDocument Spreadsheet (ODS/FODS) + Uniform Office Spreadsheet (UOS1/2) 其它的单表格式 + dBASE and Visual FoxPro (DBF) + Symbolic Link (SYLK) + Lotus Formatted Text (PRN) + Data Interchange Format (DIF) + HTML + Rich Text Format (RTF) + Ethercalc Record Format (ETH) - 测试 Node 浏览器 测试环境 测试文件 - 合作 OSX/Linux Windows * 测试 - 证书 - 引用

在浏览器里使用,增加一个script标签:

Use in browser, add a Script tag:

使用CDN (点击显示详情) | CDN | URL | |—————-:|:—————————————————————-| | | https://unpkg.com/xlsx/ | | | https://jsdelivr.com/package/npm/xlsx | | | http://cdnjs.com/libraries/xlsx | | | https://bundle.run/xlsx@latest?name=XLSX | 提供最新的版本:

使用 npm:

Use npm:

使用 bower:

Use bower:

目录 包括了一些简单的项目:

框架和APIS

framework and API

打包工具

Packing Tool

集成平台

Integrated Platform

可选特点 (点击显示详情) node版本自动要求模块提供其他的特性。某些模块的文件相当大而且仅在一些特殊的场景下才会用到,因此不应该把他们当做核心部分一起加载。在浏览器中用到这些模块时,可以用下面的方式进行加载: 每一个依赖合适的版本可以放在 dist/directory 目录下。 完整的单文件版本在 文件里面。 默认情况下,Webpack和Browserify构建包含可选的模块。可以通过配置Webpack移除对 的支持:

自从库使用了像 这样的函数,老版本的浏览器需要shim 提供缺少的函数

Since the library has used functions such as this, the old version of the browser requires .

要在加载 的script标签之前添加shim,才能使用它。

To use it, you need to add shim before loading the script tag.

shim.min.js也包括了在IE6-9中用于加载和保存文件的 和 。对于适用于Photoshop和其它的Adobe产品的格式,脚本会绑定shim。

Sim.min.js also includes the sum of the files used in IE6-9 to load and save files. Scripts bind the shim for the format that applies to Photoshop and other Adobe products.

原理 (点击显示详情) 在SheetJS之前,处理电子表格文件的接口只能用于特定的格式。许多第三方库要么支持一种格式,要么为每一种支持的文件类型提供一个不同的类集。虽然在Excel 2007里面引入了XLSB,但只有Sheet和Excel支持这种格式。 为了提高不可知格式的显示,js-xlsx使用了被称作[“Common Spreadsheet Format”]的纯JS的显示方法(#common-spreadsheet-format)。强调一种统一的显示方式,能够有一些特点,比如格式转换和嵌套。通过提取出各种格式的复杂性,工具没有必要担心特定的文件类型。 一个简单的的对象显示和细心的代码练习相结合,能让示例运行在较老的浏览器以及像和这样可选择的环境里执行。虽然很想使用最新的和最好的特性,不过这些特性需要最新的浏览器,用以限制兼容性。 工具函数捕获通用的使用例子,比如生成JS对象或HTML。大多数简单例子的操作只要几行代码。大多数复杂的普遍的复杂操作应该直截了当的生成。 在Excel 2007种,Excel添加XSLX格式作为默认的起始端。然而,有一些其他格式会更多的出现上述的属性。例如,XLSB格式XLSX格式相似,不过文件会使用一半的空间,而且也会更开的打开文件。虽然XLSX编写器可以使用,但是其他格式的编写器也可以使用,因此使用者能够充分利用每一种格式独特的特点。社区版本的主要关注点在正确的数据转换,即从任意一个兼容的数据表示中提取数据,导出适用于任意第三方接口的各种数据格式。

对于解析,第一步是读取文件。这一步包括获取数据并且导入数据库。这里有一些常用的例子。

For parsing, the first step is to read a file. This step includes getting data and importing a database. Here are some of the common examples.

nodejs读取文件 (点击显示详情) 只能在服务器环境中使用。浏览器没有用于读取任意指定路径文件的API,因此必须使用另外的策略。
Photoshop ExtendScript读取文件 (点击显示详情) 用Photoshop和其他的ExtendScript目标把逻辑包起来。需要指定文件的绝对路径 包含了一个更复杂的例子。
浏览器从页面读取TABLE元素 (点击显示详情) 和 工具函数获取DOM的TABLE元素,并且通过子节点进行迭代。 一个网页里面的多张表可以被转换成单个的工作表。 另一种选择,HTML代码也可以被提取和解析。
浏览器下载文件(ajax) (点击显示详情) 注意:对于运行在老版浏览器里更完整的例子,请查看示例 http://oss.sheetjs.com/js-xlsx/ajax.html示例包含 和 更多的例子。
浏览器拖拽 (点击显示详情) 拖拽使用了HTML5 的 API,加载数据时使用 或 。但并不是所有的浏览器都支持全部的 API,因此非常推荐动态的特性检测。
浏览器通过form元素上传文件 (点击显示详情) 来自元素的数据能够被和拖拽例子中相同的API处理。 示例展示了一个IE兼容性的回退方案。

包括移动App文件处理等更多的使用例子可以在included demos中查看。

More examples of use, including moving App files, can be found at included demos.

为什么没有流式读取API? (点击显示详情) 最常用的和最令人感兴趣的格式(XLS, XLSX/M, XLSB, ODS)最终都是ZIP或CFB文件容器。两种格式都不会放目录结构在文件开头:ZIP文件把主要的目录记录放在逻辑文件的结尾,然而CFB文件可以把存储信息放在文件的任何地方。所以,为了正确地处理这些格式,流式函数必须在开始之前缓存整个文件。这样证明了流式的期待的错误,因此我们不提供任何流式阅读API。

当处理可读流时,最简单的方式是缓存流,并且最后再去处理整个文件。这可以通过临时文件或者是显式连接流来实现。

The simplest way to handle a readable stream is to cache the stream and, finally, to process the entire file. This can be done by a temporary file or a visible stream of connections.

显式连接流 (点击显示详情) 使用像这样的模块会有更多有效的解决办法可以使用。
首先写入文件系统 (点击显示详情) 这个例子使用生成文件名。

完整的对象格式会在本文件的后面部分进行介绍。

The complete object format will be presented at the end of this document.

读取指定的单元格 (点击显示详情) 这个例子提取first工作表中A1单元格的存储值:
在工作簿中增加新的工作表 (点击显示详情) 例子中使用生成工作表,使用把表添加到工作簿中。
从头开始创建工作簿 (点击显示详情) 工作簿对象包含一个名称数组和一个对象,用来将表名映射到表对象。工具函数创建一个新的工作簿对象: 新的工作簿是空白的而且不包含工作表。如果工作簿,那么写入函数将会出错。

node安装一个能够读取电子数据表和输出各种格式的命令行工具 。源码可以在 目录下的里面找到。

Node installs a command line tool that can read spreadsheets and output various formats. The source code can be found in the directory.

中的一些辅助函数会生成不同的工作表视图。

. Some of the auxiliary functions generate different sheet views.

  • 生成CSV文件
  • 生成UTF16的格式化文本
  • 生成HTML
  • 生成一个对象数组
  • 生成一张公示列表

对编写而言,第一步是生成导出数据。辅助函数 和 将会生成各种适合分发的数据格式。第二步是和端点实际的共享数据。假设是一个工作簿对象。

For writing, the first step is to generate export data. Auxiliary functions and data formats will be generated that are suitable for distribution. The second step is to share actual data with the endpoint. Assumption is a workbook object.

nodejs写入文件 (点击显示详情) uses in server environments:
Photoshop ExtendScript 写入文件 (点击显示详情) 把 包裹在 Photoshop 和 other ExtendScript 目标里面。指定的路径应该是绝对路径。 示例包含有更复杂的例子。
浏览器将TABLE元素添加到页面 (点击显示详情) 工具函数生成能被添加到任意DOM元素的HTML代码。
浏览器上传文件(ajax) (点击显示详情) 用 的完整的复杂示例可以在 示例 中查看,获取和包装器库的例子也可以包含在里面。例子中假设服务器能处理Base64编码的文件(查看基本的莫得服务器示例)。
浏览器保存文件 (点击显示详情) 包含了一些用于触发文件保存的方法。 - 浏览器API为文件创建一个URL对象,通过创建a标签并给他添加click事件就可以使用URL对象。现代浏览器都支持这个方法。 - 是IE10及IE10以上用来触发文件保存的API。 - 对于Windows XP 和 Windows 7里面的IE6和IE6以上的以上浏览器, 使用 VBScript 和 ActiveX 来写入文件。s补充程序(shim)必须包含在包含的HTML页面中。 并没有标准的方法判断是否真实的文件已经被下载了。
浏览器保存文件(兼容性) (点击显示详情) 方法在大多数的现代浏览器以及老版本的浏览器中都能使用。对于更老的浏览器,wrapper库里面有变通的方法可以应用。 执行 方法。 注意:如果方法可以使用,会自动调用。 使用Flash SWF按钮生成本地文件,即使是ActiveX不能使用的环境也适用。 示例展示了IE向后兼容的场景。

included demos包含了移动app和其他专门的部署。

included demos includes mobile apps and other specialized deployments.

对象中可以使用流式写入函数。流式函数像普通的函数一样传入相同的参数,不过返回一个可读流。但是他们只暴露在Nodejs中。

An object can use a flow-writing function. A current function carries the same parameter as a normal function, but returns a readable stream. But they are only exposed in Nodejs.

  • 是 的流式版本。
  • 是 的流式版本。
  • 是 的流式版本。
nodejs转换成CSV并写入文件 (点击显示详情)
nodejs将JSON流输出到屏幕 (点击显示详情)

https://github.com/sheetjs/sheetaki pips将可写流写入nodejs响应。

pips write streams to nodejs responses.

是浏览器暴露出来可以使用的方法,导出到node中能够使用的是库的版本(通过构建脚本添加)。是格式化库的嵌入版本。

It is the method that the browser is exposed to, and the version of the library that can be exported to Node is an embedded version of .

用来解析数据 。 用来读取文件名 并且解析。解析选项会在解析选项部分阐述。

Use to parsing data. Use to read file names and parsing. Parsing options are described in part at

用来写入工作簿 。 把 写入到特定的文件 中。如果是基于浏览器的环境,此函数会强制浏览器端下载。 把 写入到特定的文件 中。如果 被省略,写入函数会使用第三个参数作为回调函数。

To write to a workbook. Write to a specific file. If it is based on the browser environment, this function forces the browser to download. Write to a specific file. If omitted, the writing function uses the third parameter as a callback function.

包含一组流式写入函数的集合。

Contains a group of flow-writing functions.

写入选项会在写入选项部分部分进行阐述。

Writing options are described in section .

对象中的工具函数都可以使用,工具函数在工具函数部分进行阐述。

The tool functions in an object can be used. The tool functions are described in utility function .

导入:

Import:

  • 把转换JS数据数组的数组为工作表。
  • 把JS对象数组转换为工作表。
  • 把DOM TABLE元素转换为工作表。
  • 把JS数据数组的数组添加到已存在的工作表中。
  • 把JS对象数组添加到已存在的工作表中。

导出:

Export:

  • 把工作表转换为JS对象数组。
  • 生成分隔符隔开值的输出。
  • 生成UTF16格式化的文本。
  • 生成HTML输出。
  • 生成公式列表(带有值回退)。

单元格和单元格地址的操作:

Operation of cells and cell addresses:

  • 生成文本类型的单元格值(使用数字格式)。
  • 在0索引行和1索引行之间转换。
  • 在0索引列和列名之间转换。
  • 转换单元格地址。
  • 转换单元格的范围。

js-xlsx符合常用的数据表格式(CSF)。

js-xlsx corresponds to the common data sheet format (CSF).

单元格地址对象的存储格式为,其中和分别代表的是0索引列和行号。例如单元格地址用对象表示。

Cell address objects are stored in a format that represents 0 index columns and row numbers, respectively. For example, a cell address is expressed as an object.

单元格范围对象存储格式为,其中是第一个单元格,是最后一个单元格。范围是包含关系。例如范围 用对象表示。当遍历数据表范围时,工具函数执行行优先命令。

Cell range objects are stored in format, with the first cell and the last cell. The range contains relationships. For example, the range is expressed as objects. When you go through the range of data tables, the tool function executes the line priority command.

单元格对象是纯粹的JS对象,它的keys和values遵循下列的约定:

Cells are intended for pure JS objects, with Keys and Values following the following agreement:

Key Description
原始值(查看数据类型部分获取更多的信息)
格式化文本(如果可以使用)
内行: Boolean, Error, Number, Date, Text, Stub
单元格公式编码为A1样式的字符串(如果可以使用)
如果公式是数组公式,则包围数组的范围(如果可以使用)
富文本编码 (如果可以使用)
富文本渲染成HTML (如果可以使用)
与单元格关联的注释
与单元格关联的数字格式字符串(如果有必要)
单元格的超链接对象 ( 长联接, 是提示消息)
单元格的样式/主题 (如果可以使用)

如果文本可以使用,内置的导出工具(比如CSV导出方法)就会使用它。要想改变单元格的值,在打算导出之前确保删除(或者设置 为)。工具函数会根据数字格式()和原始值(如果可用)重新生成文本。

If text can be used, the built-in export tool (e.g., CSV export method) will use it. To change the value of a cell, make sure that it is deleted (or set) before it is intended to export. The tool function will regenerate the text according to the number format () and the original value (if available).

真实的数组公式存储在数组范围中第一个单元个的字段内。此范围内的其他单元格会省略字段。

Real array formulae are stored in the field of the first cell in the array range. Other cells in this range omit fields.

原始值被存储在值属性中,用来解释基于类型的属性。这样的区别允许用于数字和数字类型文本的展示。下面有6种有效的单元格类型。

The original value is stored in the value property to explain the type-based properties. This distinction is allowed for the presentation of the text of the number and the type of number. There are six valid cell types below.

Type Description
Boolean: 值可以理解为JS
Error: 值是数字类型的编码,而且属性存储共同的名称 **
Number: 值是JS **
Date: 值是 JS 对象或者是被解析为Date的字符串 **
Text: 值可以理解为 JS 并且被写成文本 **
Stub: 被数据处理工具函数忽略的空白子单元格 **
Error 值以及含义 (点击显示详情) | Value | Error 含义 | | ——-: | :——————— | | | | | | | | | | | | | | | | | | | | | | | | |

表示Number类型。包括了所有被Excel存储为数字的数据表,比如dates/times和Boolean字段。Excel专门使用能够被IEEE754浮点数表示的数据,比如JS Number,所以字段 保存原始数字。字段保持格式化文本。Dates 默认存储为数字,使用进行转换。

is the Number type. Includes all data tables stored as numbers by Excel, such as dates/times and Boolean fields. Excel uses data that can be expressed by IEE754 floats, such as JS Number, so the fields save the original numbers. The fields keep formatted text.

类型 表示日期类型,只有当选项为才会生成日期类型。因为JSON没有普通的日期类型,所以希望解析器存储的日期字符串像从中获取的一样。另一方面,写入函数和导出函数也可以处理日期字符串和JS日期对象。需要注意Excel会忽略时区修饰符,并且处理所有本地时区的日期。代码库没有改正这个错误。

Type The date type indicates that the date type is generated only if the option is selected. Because JSON does not have a normal date type, it wants the date string stored in the solver to be the same as that obtained from it. On the other hand, the writing and export functions can also handle the date string and the JS date object. Note that Excel ignores the time zone modifiers and processes all local time zone dates. The code library does not correct this error.

类型表示空白的存根单元格。生成存根单元格是为了以防万一单元格没有被赋予指定值,但是保留了注释或者是其他的元数据。存根单元格会被核心库的数据处理工具函数忽略。默认情况下不会生成存根单元格,只有当解析器的选项被设为时才会生成。

. The root cells are generated in case the cells are not assigned to the specified value, but the comment or other metadata are retained. The root cells are ignored by the data-processing tool function of the core library. The root cells are not generated by default, but only when the option of the parser is set.

日期

Excel 日期编码的细节 (点击显示详情) 默认情况下,Excel把日期存储为数字,并用指定的日期处理格式编码进行处理。例如,日期被存储为数字,数字格式为。模块了解数字格式并进行适当的转换。 XSLX也支持特定的日期类型,它的数据是ISO 8601日期字符串。格式化工具把日期还原为数字。 所有解析器的默认行为是生成数字单元格。设置为true会强制生成器存储日期。
时区和日期 (点击显示详情) Excel没有原生的通用时间的概念。所有的时间都会在本地时区指定。Excel限制指定真正的绝对日期。 对于下面的Excel,代码库将所有的日期视为相对于当地时区的日期。
时期:1900年和1904年 (点击显示详情) Excel支持两种时期(January 1 1900和January 1 1904),查看“1900 vs. 1904 Date System” article。工作簿的时期可以通过测试工作簿的属性来决定:

每一个不以开始的key都会映射到一个单元格(用符合)。 返回指定地址的单元格对象。

Each non-start key maps to a cell (with matching). Returns the cell object of the specified address.

指定的数据表属性(通过 访问, 每一个都以 开始):

The data sheet properties specified by (by access, each starting with):

  • :A-1的范围是基于表示数据表的范围。操作数据表的函数应该使用这个参数来决定操作范围。此范围之外指定的单元格不会被处理。尤其是手动编写数据表时,范围之外的单元格不会被包含在其中。

处理数据表的函数应该对的存在进行检测。如果被忽略或者不是有效的范围,函数就可以吧数据表看做是空表或者尝试猜范围。词库附带的工具函数会将工作表视为空(例如CSV的输出是空字符串)。

The function that handles the table should detect the existence. If it is ignored or is not a valid range, the function can be described as empty or try to guess the range. The tool function attached to the vocabulary treats the sheet as empty (e.g. the output of the CSV is an empty string).

当用属性集读取工作表时,ref参数会使用限制的范围。最初的范围通过设置。

When reading the sheet using the attribute set, the ref parameter uses the limit range. The initial range is set.

  • :对象表示页面的边距。默认值遵循Excel的常规设置。Excel也有”wide”和”narrow”的设置,不过他们都被存储为原生的尺寸。主要的属性已在下表列出:
页面边距详情 (点击显示详情) | key | description | “normal” | “wide” | “narrow” | |—————|————————————|:————-|:———-|:———— | | | left margin (inches) | | | | | | right margin (inches) | | | | | | top margin (inches) | | | | | | bottom margin (inches) | | | | | | header margin (inches) | | | | | | footer margin (inches) | | | |

工作表对象

除了基本的数据表关键字之外,工作表还增加了下面的内容:

In addition to the basic data sheet keywords, the following additions were added to the sheet:

  • :返回列属性对象的数组。实际上的列宽使用统一的方式存储在文件里,宽度的测量依据最大数字宽度(在像素中,最大的渲染宽度是数字0-9)。渲染时,列对象用字段存储像素宽度,用存储字符宽度,用字段存储最大数字宽度。

    : returns the array of column attribute objects. In practice, the column width is stored in the file in a uniform manner, and the width is measured on the basis of the maximum digital width (in pixels, the maximum rendering width is 0-9). When rendering, the column object stores the width of the pixel with a field, the width with a stored character, and the maximum digital width with a field.

  • : 返回行属性对象的数组,后面的文档会进行阐述。每一个行对象编码属性包括行高和能见度。

    : Returns the array of line attribute objects, which are described in the documents that follow. Each line object coded properties include row height and visibility.

  • : 返回与工作表中合并单元格相对应的范围对象的数组。纯文本格式不支持合并单元格。如果合并的单元格存在,CSV导出将会把所有的单元格写入合并范围,因此确保在合并的范围内只有第一个单元格(左上角的单元格)被设置。

    : Returns the array of objects corresponding to the range of cells that are merged in the sheet. The pure text format does not support the consolidation of cells. If the merged cells exist, the CSV export will write all cells into the combined range, thus ensuring that only the first cell (the upper left corner cell) is set in the context of the consolidation.

  • : 写入数据表保护属性的对象。键为支持密码保护的数据表(XLSX/XLSB/XLS)指定密码。写入函数会使用XOR模糊方式。下面控制数据表保护—数据表被锁定时设置key为false可以使用feature,或者设为true禁用feature。

    : Writes the object of the data sheet to protect the properties. Keys specify the password to support password-protected datasheets (XLSX/XLSB/XLS). Writing functions use XOR blurry. Next controls data sheet protection - when the data sheet is locked, you can set key to false to use Feature or set it to true to disablefeature.

工作表保护详情 (点击显示详情) | key | feature (true=disabled / false=enabled) | default | |:———————————|:————————————————————|:—————-| | | Select locked cells | enabled | | | Select unlocked cells | enabled | | | Format cells | disabled | | | Format columns | disabled | | | Format rows | disabled | | | Insert columns | disabled | | | Insert rows | disabled | | | Insert hyperlinks | disabled | | | Delete columns | disabled | | | Delete rows | disabled | | | Sort | disabled | | | Filter | disabled | | | Use PivotTable reports | disabled | | | Edit objects | enabled | | | Edit scenarios | enabled |
  • : 自动筛选下面的模式:

图表对象

图表会被显示为标准的数据表。要注意和被设置为的属性进行区分。

A chart is shown as a standard table of data. Be careful to distinguish between properties that are set.

底层数据和指的是图表中的缓存数据。 图表的第一行是底层标题。

The bottom and bottom data refer to the cache data in the chart. The first line of the chart is the bottom heading.

宏对象

宏对象会被显示为标准的数据表。注意与设置为的属性进行区分。

Macro objects are shown as standard data sheets. Note that you distinguish from the properties you set them.

对话框对象

对话框对象会被显示为标准的数据表。注意与设置为的属性进行区分。

dialogue box objects are shown as standard data tables. Note that you distinguish from the properties you set them.

是工作簿内工作表的有序列表。

is the orderly list of sheets in the workbook.

返回一个表示工作表的对象。

Returns an object that represents the sheet.

是一个存储标准属性的对象。 存储自定义的属性。因为XLS标准属性偏离了XLSX标准,所以XLS解析把核心的属性存储在两个属性中。

is the object of a storage standard attribute. Stores custom properties. Because the XLS standard properties deviate from the XLSX standard, XLS interprets the core properties to be stored in two properties.

存储工作簿级别的特性.

Storage of .

工作簿文件属性

各种各样的文件格式为不同的文件属性使用不同的内置名称。工作簿的对象用来规范这些名称。

Various file formats use different built-in names for different file attributes. The objects of the workbook are used to regulate these names.

文件属性 (点击显示详情) | JS Name | Excel Description | |:———————|:———————————————-| | | Summary tab “Title” | | | Summary tab “Subject” | | | Summary tab “Author” | | | Summary tab “Manager” | | | Summary tab “Company” | | | Summary tab “Category” | | | Summary tab “Keywords” | | | Summary tab “Comments” | | | Statistics tab “Last saved by” | | | Statistics tab “Created” |

例如设置工作簿的title属性:

For example, to set the title properties of the workbook:

自定义的属性会被添加到工作簿的对象中:

Custom properties are added to the object in the workbook:

写入函数将会处理选项对象的键:

The writing function handles the key of the option object:

存储工作簿级别的特性。

Stores the properties of the workbook level.

定义名称

是一个定义名称对象的数组,这些名称对象都有键:

is the array of objects that define a name object, all of which have keys:

定义名称属性 (点击显示) | Key | Description | |:—————|:———————| | | 名称的范围。 数据表的索引 (0=第一章张数据表) 或 (工作簿) | | | 区分大小写的名称。 标准的规则应用** | | | A1单元格样式的引用 () | | | 注释 (只适用于XLS/XLSX/XLSB) |

Excel 允许两个表格范围定义的名称共享相同的名称。但是一个表格范围的名称不能和一个工作簿范围的名称相冲突。工作簿写入函数不强制这样的约束。

Excel allows two table ranges to be defined with the same name. But the name of a table range cannot conflict with the name of a workbook range. The writing function does not impose such a constraint.

工作簿视图

是一个工作簿视图对象数组,这些视图对象有keys。

is a workbook view of object arrays that have keys.

Key Description
如果值为true,从左到右的显示

混合的工作簿属性

Key Description
VBA Project Workbook Code Name
时间: 0/false 表示1900系统时间, 1/true 表示1904系统时间
警告或去除存储的个人验证信息

即使是想存储数据这样的基本特点,官方的Excel格式也会用不同的方式存储相同的内容。期望解析器从底层文件格式转换为通用的电子表格格式。期望编写器将CSF格式转换回基本的文件格式。

Even if you want to store data as a basic feature, the official Excel format will store the same content in different ways. It is expected that the solver will change from a bottom file format to a common spreadsheet format. It is expected that the writer will convert the CSF format back to the basic file format.

公式

A1单元格样式字符串被存储在字段中。虽然不同的文件格式用不同的方式存储文件格式,不过这些格式都需要被翻译。虽然一些格式存储的公式有一个前导等号,但是CSF公式不以开始。

The A1 cell style string is stored in the field. Although different file formats store file formats in different ways, all of these formats need to be translated. While the formulas stored in some formats have a lead equal, the CSF formula does not start.

A1=1, A2=2, A3=A1+A2的显示 (点击展示详情)

共享的公式会被解压缩,并且每一个单元格都有相应的公式。编写器通常不会尝试去生成共享公式。

The shared formula is decompressed and each cell has the corresponding formula. The writer does not usually attempt to generate the shared formula.

有公式记录但是没有值的单元格会被序列化,序列化的方式能够被Excel和其他电子表格工具将会识别。这个代码库将不会自动计算公式结果!例如去计算工作表中的。

Cells that have formula records but do not have values are sequenced, which can be identified by Excel and other spreadsheet tools. This code library will not automatically calculate formula results. For example, go to the sheet.

没有已知值的公式 (点击显示详情)

数组公式

array formula

数组公式被存储在数组块左上角的单元格内。一个数组公式的所有单元格都会有于该范围对应的字段。一个单一的单元格公式要注意于字段所存储的纯公式进行区分。

The array formula is stored in cells with the upper left corner of the array. All cells of a array formulae have fields corresponding to that range. A single cell formula is distinguished by the pure formula stored in the field.

数组公式示例 (点击显示详情) 例如设置单元格为数组公式: 对于多个单元格的数组公式,每一个单元格都有相同的数组范围,不过只有第一个单元格指定公式。考虑:

工具函数和编写器被用来检查字段的存在,并且忽略单元格内任何可能的公式元素,这些单元格并不包含起始单元格。这些操作函数并不会被要求执行公式的校验。

Tool functions and compilers are used to check the existence of fields and to ignore any possible formula elements in cells that do not contain starting cells. These functions are not required to perform formula verifications.

公式输出工具函数 (点击显示详情) 方法生成为每个公式或者是数组公式生成一行。数组公式被渲染在的表格内,而纯单元格被渲染在的表格内。注意字符串的迭代会有前缀符号,与Excel公式栏显示的一致。
公式文件格式细节 (点击显示详情) | Storage Representation | Formats | Read | Write | |:———————————-|:————————————-|:——-:|:——-:| | A1-style strings | XLSX | :o: | :o: | | RC-style strings | XLML and plain text | :o: | :o: | | BIFF Parsed formulae | XLSB and all XLS formats | :o: | | | OpenFormula formulae | ODS/FODS/UOS | :o: | :o: | 因为Excel禁止单元格的命名与A1的名称或者是RC样式单元格引用相冲突,可能会进行不是那么简单的正则变化。DIFF解析的公式必须被明确的解开。OpenFormula可以转换正则表达式。

列属性

每张表都会有数组,如果展开的话就是的一个集合,有下列的属性:

Each table will have a array and if it is expanded, it will be a collection with the following properties:

为什么有三种宽度类型? (点击显示详情) 有三种不同的宽度类型对应于电子数据表存储列宽的三种不同方式。 SYLK和其他的纯文本格式使用原生的字符计算。像Visicalc和Multiplan这样的同时期的工具是基于字符的。因为字符有相同的宽度,足以存储一个计数。这样的传统也延续到了BIFF格式。 SpreadsheetML (2003) 尝试通过标准化整个文件中的屏幕像素计数来与HTML对齐。列宽、行高以及其他的测量使用像素。当像素和字符数量不一致时,Excel四舍五入结果。 XLSX内部用一个模糊的”最大数位宽度”表存储列宽。最大数字宽度是渲染时最大数字的宽度,通常字符”0”是最宽的。内部的宽度必须是宽度除以256的整数倍。ECMA-376介绍了一个公式用于像素和内部宽度之间的转换。这代表一种混合的方式。 读取函数尝试去填充全部的三种属性。写函数努力尝试将指定值循环到所需类型。为了阻止潜在的冲突。首先操作应该要删除其他的属性。列入,当改变像素宽度时,删除 和 属性。
执行细节 (点击显示详情) 给出的这些约束可能决定了MDW没有检查字体!解析器通过从宽度转换为像素并返回来猜测像素宽度,重复所有可能的MDW并选择最小化村务的MDW。XLML实际上存储额像素宽度,所以猜想会在相反的方向运行。 即使所有的信息都是可用的,也会期望写入函数遵循下面的优先级顺序: 1) 如果 字段可用,优先使用。 2) 如果 字段可用,请使用。 3) 如果 字段可用,请使用。

行属性

如果 数组在每张电子表中都存在,那就是一个对象的集合,集合包含一下的属性:

If the arrays exist in every spreadsheet, it's a collection of objects that contains the properties:

注意:Excel UI显示基本大纲级别为,最大级别为。字段存储基本大纲级别为,最大级别为。

Note: Excel UI shows the base outline level, the maximum level. Field storage basic outline level, the maximum level.

实现细节 (点击展示详情) Excel内部以点为单位存储行高。默认的分辨率是72DPI或者是96DPI,所以像素和点的大小应该相同。不同的分辨率他们可能不同,因此库分开了这些概念: 即使所有的信息都可用,写入函数也应该遵循下面的优先级顺序: 1)如果可用,就使用 像素高度。 2) 如果可用,就使用 像素高度。

数字格式

对于每一个单元格而言,的文本来自于 和 格式。如果格式没有指定,Excel格式就会被使用。格式要么是指定的的字符串要么是格式表内的一个索引。解析器应该用数字格式表来填充。写入函数用来序列化这个表。

For each cell, the text comes from both the & and the formatting. If the format is not specified, the Excel format is used. The formatting is either a specified string or an index within the formatting table. The parser should be filled with a digital formatting table. The writing function is used to sequence the table.

自定义的工具应该确保本地表的表内有各自的格式字符串。Excel约定规定自定义的格式以索引164开头。下面的例子从头创建了一个自定义的格式:

Customized tools should ensure that local tables contain their own formatting string. Excel agreed that the custom format should start with index 164. The following example creates a custom format from the beginning:

自定义格式的新工作簿 (点击显示详情)

这些规则和Excel如何显示自定义的数字格式稍微有些区别。特别是文字字符必须必包含在双引号里面或者在反斜杠之前。更多信息,查看Excel文档 或者是ECMA-376 18.8.31(数字格式)。

These rules and Excel display a little bit different from the custom number format. In particular, text characters must be included in a double quote or before the backslash. For more information, look at Excel documents or ECMA-376, 18.8.31 (digital format).

默认的数字格式 (点击展示详情) ECMA-376 18.8.30里列出的默认格式: | ID | Format | |—-:|:—————————————-| | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | (see below) | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | | | 20 | | | 21 | | | 22 | | | 37 | | | 38 | | | 39 | | | 40 | | | 45 | | | 46 | | | 47 | | | 48 | | | 49 | |

格式14()被Excel本地化:即使文件指明了数字格式,也会根据系统设置用不同的方式绘制。当文件的的生产者和使用者都在相同的区域时这会很有用,不过对于网络上的例子就会不同。为了避免歧义,解析函数接受选项覆盖指定格式字符串的解释。

Format 14() is localized by Excel: Even if the file specifies a digital format, it is drawn in different ways according to the system settings. This is useful when the producers and users of the file are in the same area, but the examples on the network are different. To avoid ambiguity, the solution function accepts the explanation of the option overlaying the specified format string.

超链接

超链接存储在单元格对象的关键字内。超链接对象的字段是连接目标,包括了URI片段。工具提示被存储在字段内,当移动鼠标到文字上方就会显示。

Hyperlinks are stored in the key words of the cell object. The hyperlink object field is the connecting object, including the URL segment. Tooltips are stored in the field and are displayed when the mouse is moved to the top of the text.

例如下方的片段在单元格内创建了一个指向http://sheetjs.com的链接,提示信息是:

For example, the sub-snippets create a link in the cell to with the following message:

注意Excel并不会自动为超链接添加样式—他们通常会向普通文本一样显示。

Note that Excel does not automatically add styles to hyperlinks - they usually display the same as normal text.

如果链接的目标是一个单元格或者是范围又或者是在相同的工作簿内定义名字(“Internal Links”),那么链接的开头会有一个哈希字符标识:

If the goal of the link is either a cell or a range or a name is defined in the same workbook (“International Links”), then the link begins with a Hashi character identification:

单元格注释

单元格注释是对象,被存储在单元格对象的数组内。实际上注释的内容根据注释的作者被分成了小块。每一个注释对象的字段存储注释的作者,字段是注释的纯文字展示。

cell comment is an object that is stored in the array of cell objects. The content of the note is in fact divided into blocks according to the author of the note. The author of each comment object field stores the comment, and the field is a plain text display of the comment.

例如下面的片段在单元格内添加了单元格注释:

For example, the following segments add cell notes to the cells:

注意:XLSB对作者的名字施加54个字符的限制。名字的长度超过54个字符可能造成其他的格式问题。

Note: XLSB limits the author's name to 54 characters. The length of the name exceeds 54 characters may cause other formatting problems.

把注释标记为普通的隐藏,只需设置属性:

Mark comments as ordinary hidden, just set attributes:

数据表能见度

Excel支持将表格隐藏在更低的标签栏。表格数据存储文件内,但是UI不容易让它可以使用。标准的隐藏表格会被显示在”Unhide”菜单内。Excel也有”very hidden”表格,这些表格不能被显示在菜单内。只可以通过Vb编辑器访问。

Excel supports hiding tables in lower tab bar. The table data storage file is not easy for UI to use. The standard hidden table is displayed in the Unhide menu. Excel also has the " very Hidden " table, which cannot be displayed in the menu. Only Vb editor can access it.

能见度的设置被存储在表格属性数组的属性当中。

Visibility settings are stored in the properties of the array of table properties.

更多细节 (点击显示详情) | Value | Definition | |:——-:|:——————| | 0 | Visible | | 1 | Hidden | | 2 | Very Hidden | 更多详情请查看https://rawgit.com/SheetJS/test_files/master/sheet_visibility.xlsx: 非Excel格式不支持”Very Hidden”状态。测试一个数据比哦啊是否可见的最好方式是检查是否属性为逻辑truth:

VBA和宏命令

VBA宏命令存储在特殊的数据blob中,当选项为true时,blob会暴露在工作簿对象的属性中。VBA宏命令支持 , , 和 格式。如果blob存在于工作簿中,并且和工作簿的名字有关联,支持的格式写入函数会自动插入数据blob。

The VBA macro command is stored in a special data blob, which is exposed to the properties of the objects in the workbook when the selected item is true. The VBA macro command supports, and format. If the blob exists in the workbook and is associated with the name of the workbook, the supported format writing function automatically inserts data blob.

自定义编码名称 (点击显示) 工作簿编码名称存储在中。默认情况下Excel将会设置成或者是一个翻译的短语比如。工作表和图表的编码名称在工作表属性对象的中。宏数据表和对话数据表会被忽略。 读取函数和写入函数会保护编码名称,但是当在一个不同的工作簿内增加一个VBA blob时,编码名称必须被手动设置。
宏数据表 (点击显示) 老版本的Excel也支持非VBA的宏数据表表格类型,宏数据表存储了一些自动命令。他们暴露在设置成的对象中。
检测工作簿内宏指令 (点击显示) 如果宏指令存在,那么字段就可以被设置,所以测试简单:

导出的 和 函数接受选项参数: | Option Name | Default | Description | | :————— | ———: | :—————————————————————————- | | | | 输入数据编码 (查看下方的输入类型) | | | false | 如果为true,纯文本解析不会解析值 | | | | 如果指定, 合适的时候使用编码页面 | || true | 保存公式到字段 | | | true | 解析富文本并把HTML保存到 字段 | | | false | 把数字格式的字符串保存到 字段 | | | false | 把样式/主题保存到 字段 | | | true | 生成格式化文本 字段 | | | false | 把日期存储为类型 (默认是 ) | | | | 如果指定,使用代码日期14的字符串 | | | false | 为子单元格创建类型的单元格对象 | | | 0 | 如果的值 >0, 读取第一个 行 | | | false | 值为true,解析计算链 | | | false | 如果值为true, 添加原始文件到工作簿对象 | | | false | 如果值为true, 只有足够的解析才能得到工作簿的元数据 | | | false | 如果值为true,只有足够的解析才能得到表格名称 | | | false | 如果值为true,复制 VBA blob 到 字段 | | | “” | 如果定义了密码并且文件已经加密,就会使用密码 | | | false | 如果值为true, 对意外的文件特性抛出错误 ** |

Option Name Description (see type of input under)

  • 虽然为false,但是格式化的文本也会被生成并且保存到字段。
  • 在一些情况下,即使为false,数据表也可能被解析。
  • Excel积极尝试从CSV和其他纯文本中解释值。这会导致意外的行为!选项抑制值解析。
  • 和 结合起来提供两套信息集合。
  • 将会是一个空对象,如果为false。
  • 的行为依赖于文件类型:
    • 数组(ZIP里面的路径)用于基于ZIP基础的格式
    • 哈希(将路径映射到表示文件的的对象)用于ZIP
    • 对象用于使用CFB容器的格式
  • 将会在查看JSON对象输出时生成(因为解析数据时,数据头行会被计算成一行)
  • 仅仅在展示原始的VBA CFB对象。不解析数据。XLSM 和 XLSB把VBA CFB对象存储在。BIFF8 XLS将VBA条目与核心工作簿条目混合在一起,因此库从XLS CFB容器生成了一个新的XLSB兼容blob。
  • 用于没有记录的BIFF2 - BIFF5文件以及在内没有BOM的CSV文件。
  • 目前仅支持XOR加密。当文件使用其他的加密方法时会抛出不支持的错误。
  • WTF主要用于发展。默认情况下,单一的工作表内,解析器将会抑制读取错误,允许你从解析正确的工作表内读取。设置强制这些错误被抛出。

字符串能用很多种方式解释。的参数告诉库如何解析数据参数:

Strings can be interpreted in a variety of ways. The parameters tell the library how to interpret the data parameters:

expected input
字符串: 文件的Base64编码
字符串: 二进制字符串 (字节 是 )
字符串: JS字符串 (字符被解释为UTF8)
nodejs Buffer
数组: 8位的无符号型整数数组 (字节 是 )
字符串: 将要被读取的文件的路径 (只在nodejs中可用)
实现细节 (点击显示详情) Excel和其他的电子数据表格工具读取前几个字节并且应用试探法确定稳定类型。这个支持文件类型的双关:用扩展的重命名文件会告诉你的电脑使用Excel打开文件而且Excel知道如何去处理它。这个库应用了相似的逻辑: | Byte 0 | Raw File Type | Spreadsheet Types | |:———-|:———————|:——————————————————————————| | | CFB Container | BIFF 5/8 or password-protected XLSX/XLSB or WQ3/QPW | | | BIFF Stream | BIFF 2/3/4/5 | | | XML/HTML | SpreadsheetML / Flat ODS / UOS1 / HTML / plain text | | | ZIP Archive | XLSB or XLSX/M or ODS or UOS2 or plain text | | | Plain Text | SYLK or plain text | | | Plain Text | DIF or plain text | | | UTF8 Encoded | SpreadsheetML / Flat ODS / UOS1 / HTML / plain text | | | UTF16 Encoded | SpreadsheetML / Flat ODS / UOS1 / HTML / plain text | | | Record Stream | Lotus WK* or Quattro Pro or plain text | | | Plain text | RTF or plain text | | | Plain text | SpreadsheetML / Flat ODS / UOS1 / HTML / plain text | | | Plain text | SpreadsheetML / Flat ODS / UOS1 / HTML / plain text | | | Plain text | SpreadsheetML / Flat ODS / UOS1 / HTML / plain text | DBF文件会基于前几个字节以及第三个和第四个字节进行检测(对应于文件日期的月和天)。 纯文本格式的猜测遵循下面的优先级顺序: | Format | Test | |:———-|:——————————————————————————————————| | XML | 出现在前1024个字符 | | HTML | 以 开头并且HTML标签出现在前1024个字符 * | | XML | 以 开头 | | RTF | 以 开头 | | DSV | 以开头,分隔符是指定的字符串 | | DSV | 前1024个字符中未引用的 字符比 或者 多| | TSV | 前1024个字符中未引用的字符比 多 | | CSV | 前1024个字符中的一个是逗号 | | ETH | 以开头 | | PRN | (默认) | - HTML 标签包括:, , , , , ,
为什么随机的文本文件合法? (点击显示详情) Excel在读取文件方面非常积极。添加一个XLS 扩展到任意的显示文件,让Excel认为该文件可能是一个CSV或者是TSV文件,即使它仅仅是一列!这个库尝试去复制那样的行为。 最好的方法是去校验想要得到的工作表并且确保它有期待的行数或列数。提取范围非常简单:

导出的 和 函数接受一个选型参数:

Export function accepts an optional parameter:

Option Name Default Description
输出数据编码(查看下面的输出类型)
把字节存储为类型 (默认是 )
生成共享的字符串表格 **
工作簿的类型 (查看下方支持的格式)
单页格式的工作表名称 **
基于ZIP的格式使用ZIP压缩 **
写入时覆盖工作簿的属性 **
写入XLSX/XLSB/XLSM时,覆盖主题XML **
禁止”数字作为文本”错误 **
  • 较慢并且有更多的内存密集型,不过与iOS数字老版本有更好的兼容性。
  • 原始数据时唯一保证存储的东西。在README文件中没有描述的功能可能无法序列化。
  • 仅用于XLSX输出并且不能保证与第三方读取器一起工作。Excel自身不经常用类型编写单元格,因此非Excel工具会忽视数据或者是有日期错误。
  • 是一个备份工作簿字段的对象。从工作簿文件属性 部分查看表格。
  • 如果指定,来自的字符串会被存储为XLSX/XLSB/XLSM文件的基本主题(ZIP中的)。
  • 由于在程序中有一个bug,一些功能比如”分列”会在忽略错误条件的工作表上使Excel崩溃。默认情况下写入函数将会标记文件忽略错误。设置为来禁止。

与第三方工具的广泛兼容性,这个库支持很多种输出格式。明确的文件类型被选项控制:

This library supports a wide range of output formats. Clear file types are controlled by options:

file ext container sheets Description
ZIP multi Excel 2007+ XML Format(XML 格式)
ZIP multi Excel 2007+ Macro XML Format(宏 XML 格式)
ZIP multi Excel 2007+ Binary Format(二进制格式)
CFB multi Excel 97-2004 Worksheet Format(工作簿格式)
CFB multi Excel 5.0/95 Worksheet Format(工作簿格式)
none single Excel 2.0 Worksheet Format(工作簿格式)
none multi Excel 2003-2004 (SpreadsheetML)
ZIP multi OpenDocument Spreadsheet(开放文档格式的电子表格)
none multi Flat OpenDocument Spreadsheet(平滑的开放文档格式的电子表格)
none single Comma Separated Values(逗号分隔值)
none single UTF-16 Unicode Text (TXT)
none single Symbolic Link (SYLK)
none single HTML Document
none single Data Interchange Format (DIF) (数据交换格式)
none single dBASE II + VFP Extensions (DBF)(dBASE II + VFP扩展)
none single Rich Text Format (RTF)
none single Lotus Formatted Text(Lotus格式化文本。)
none single Ethercalc Record Format (ETH)(Ethercalc记录格式)
  • 仅用于带ZIP容器的格式。
  • 格式只支持需要选型指明工作表的单表。如果字符串为空,就会使用第一张工作表。
  • 如果未指定值,那么会自动根据文件扩展名来猜测输出文件格式。他就会在上表中选择匹配扩展名的第一个格式。

函数的参数备份函数的参数: | | output | |——————|————————————————————————————————-| | | 字符串: 文件的Base64编码 | | | 字符串: 二进制字符串 (字节 是 ) | | | 字符串: JS 字符串 (字符被解释成UTF8) | | | nodejs Buffer | | | ArrayBuffer, 8位无符号整数的回退数组 | | | 字符串: 将要创建的文件的地址(仅用于nodejs) |

Parameters for the function's parameter backup function: output ---------------------------------------------------------------------------- string: binary string (word yes) string: JS string (word interpreted as UTF8) nodejs Buffer ArrayBuffer, 8-digit reverse array integer string: address of the document to be created (nodejs only)

函数接受一张工作表以及一个可选的选项对象。 函数接受一个数据对象以及一个可选的选项对象。 示例都是基于下面的工作表:

Function accepts a sheet and an optional object. Function accepts a data object and an optional object. Examples are based on the following sheet:

获取JS值数组的数组,并且返回一个工作表寻找输入数据。Numbers,Booleans和Strings都被存储为相应的样式。Date被存储为date或者是numbers。跳过数组孔和显式“未定义”值。值可能被剔除。所有其它值存储为字符串。函数获取选项参数:

Gets the array of JS value arrays and returns a sheet to look for input data. Numbers, Booleans and Strings are stored as the corresponding style. Date is stored as date or numberers. Skipping the array hole and display " undefined " values. Values can be cut off. All other values are stored as strings. Function capture option parameters:

Option Name Default Description
FMT 14 字符串输出使用特定的日期格式
false 存储日期为类型 (默认是 )
false 为值创建类型为的单元格对象
例子 (点击显示) 生成实例表:

获取JS值的数组的数组,并且更新一个已存在的工作表对象。它遵循和一样的过程,并且接受一个选项参数:

Retrieves the arrays of JS values and updates an existing sheet object. It follows the same process and accepts an option parameter:

Option Name Default Description
FMT 14 字符串输出使用指定的日期格式
false 存储日期为类型 (默认是 )
false 为值创建类型为的单元格对象
只用指定的单元格作为指定的起点 (查看下表)

应该是以下之一:

It should be one of the following:

Description
(cell object) 使用指定的单元格 (单元格对象)
(string) 使用指定的单元格 (A1样式的单元格)
(number >=0) 从指定行的第一列开始 (0索引)
-1 从第一列开始添加到工作表底部
(default) 从单元格A1开始
示例 (点击显示) 考虑工作表: 此工作表可按照顺序构建:

获取对象数组并且返回一张基于对象自动生成”headers”的工作表。默认的列顺序由第一次出现的字段决定,这些字段通过使用得到,不过可以使用选项参数覆盖。

Gets an object array and returns a sheet that automatically generates "headers " on the basis of the object. The default column order is determined by the first-time field, which is obtained by use, although you can overwrite the option parameter.

Option Name Default Description
使用指定的列顺序 (默认 )
FMT 14 字符串输出使用指定的日期格式
false 存储日期为类型 (默认是 )
false 如果值为true, 输出不包含header行
示例 (点击显示) 原始的表单不能以明显的方法复制,因为JS对象的keys必须是独一无二的。之后用 和 替换第二个 和 。 或者可以跳过header行:

获取一个对象数组,并且更新一个已存在的工作表对象。与一样有相同的过程,并且接受一个选项参数:

Gets an object array and updates an existing sheet object. There is the same process and accepts an option parameter:

Option Name Default Description
使用指定的列排序 (默认 )
FMT 14 字符串输出使用指定的日期格式
false 把存储日期为类型 (默认是 )
false 如果值为true, 输出不包含header行
使用指定的单元格作为起点 (查看下方表格)

应该是以下之一:

It should be one of the following:

Description
(cell object) 使用指定的单元格(单元格对象)
(string) 使用指定的单元格 (A1样式的单元格)
(number >=0) 从指定行的第一列开始(0索引)
-1 从第一列开始添加到工作表底部
(default) 从单元格A1开始
例子 (点击展示) 考虑工作表: 工作表能够以顺序构建:

获取一个table DOM元素,并且返回一个工作表寻找输入的table。Numbers会被解析。所有的数据将会被存储为字符串。

Gets a table DOM element and returns a sheet to find an inputable table. Numbers is parsed. All data will be stored as strings.

基于工作表会产生一个最小的工作簿。

A minimum workbook based on the sheet is created.

两个函数接受选项参数:

Two functions accept option parameters:

Option Name Default Description
如果值为true, 每一个单元格将会保存原始的字符串
FMT 14 字符串输出使用指定的日期格式
false 把日期存储为类型 (默认是 )
0 如果值 >0, 读取表格的第一个行
false 如果值为true, 隐藏的行和单元格将不会被解析
例子 (点击显示) 生成示例表单,以HTML table开始: 处理表格:

注意:能够处理表示为字符串的HTML。

N.B. Capable of handling HTML, expressed as a string.

生成一个命令数组,命令显示了一个人会怎样进入一个应用。每一个入口都是表格。字符串文字以”`”为前缀,符合Excel。

Generates a command array that shows how a person enters an application. Each entry is a table. String text is prefixed with " ` " and matches Excel.

例子 (点击显示) 示例表:

作为一个 CSV 类型的替代,也会产生CSV输出。这个函数获取一个选项参数:

Replaces a CSV type with a CSV output. This function captures an option parameter:

Option Name Default Description
“字段分隔符”表示字段之间的分隔符
“记录分隔符”表示行之间的分隔符
FMT 14 字符串输出使用指定的日期格式
false 删除每条记录中的尾随字段分隔符**
true 包含CSV输出的空白行
false 跳过CSV输出的隐藏行/列
  • 将删除默认下每行的尾随逗号 必须设置为才能跳过空白行。
例子 (点击显示) 示例表:

#### UTF-16 Unicode 文本

输出类型使用tab字符作为字段分隔符。如果可用(包含全部的分发但不是核心),输出将会被编码为并且BOM会被预置。

The output type uses the tab character as a field separator. If available (including all distributions but not the core), the output will be encoded and BOM preset.

获取和一样的参数。

Get the same parameter.

作为’ writeFile ‘ HTML类型的替代,也会生成HTML输出。这个函数接受一个选项参数:

This function accepts an option parameter:

Option Name Default Description
为元素指定 特性
false 如果值为true, 为每一个TD设置
覆盖 header (默认 )
覆盖 footer (默认 )
例子 (点击显示) 示例表格:

生成不同类型的JS对象。这个函数接受一个选项参数:

Generates different types of JS objects. This function accepts an option parameter:

Option Name Default Description
使用原生值 (true) 或者格式化字符串 (false)
from WS 覆盖 Range (查看下面的table)
控制输出格式 (查看下面的table)
FMT 14 字符串输出使用指定的日期格式
使用指定的值替代null或者undefined
** 包含输出的空白行 **
  • 只影响有格式编码()字段或者格式化文本()字段的单元格。
  • 如果被指定,第一行就会被当做数据行;如果未指定,第一行是header并且不作为数据。
  • 当header未指定时,转换将通过添加”_”和一个从”1”开始的计数自动消除标题条目的歧义。例如有三列的标题都是,那么输出字段是,,。
  • 当值为true时返回,值为false会被跳过。
  • 如果没有指定,通常和会被跳过。如果有指定值,所有的和嗲都将会用填充。
  • 当为时,默认生成空白行。必须设置为来跳过空白行。
  • 当不为时,默认跳过空白行。必须设置为来生成空白行。

是以下之一:

It is one of the following:

Description
(number) 使用工作表范围,但将起始行设置为值
(string) 使用指定的范围 (A1类型的有界范围的字符串)
(default) 使用工作表范围 ()

是以下之一:

It is one of the following:

Description
生成数组类型的数组 (“二维数组”)
行对象的键是文字的列标题
array of strings 在行对象内使用指定的字符串作为键
(default) 读取并消除第一行的歧义作为键

如果不为,行对象将会包含不可枚举的属性,这个属性代表与条目相对应的工作表的行。

If not, the line object will contain a non-quantifiable attribute that represents the line of the sheet corresponding to the entry.

示例 (点击显示) 示例表: 展示效果的例子:

虽然库的名称是,不过它支持多种电子表格文件格式:

Although the name of the library is, it supports multiple spreadsheet file formats:

Format Read Write
Excel Worksheet/Workbook Formats :——-: :——-:
Excel 2007+ XML Formats (XLSX/XLSM) :o: :o:
Excel 2007+ Binary Format (XLSB BIFF12) :o: :o:
Excel 2003-2004 XML Format (XML “SpreadsheetML”) :o: :o:
Excel 97-2004 (XLS BIFF8) :o: :o:
Excel 5.0/95 (XLS BIFF5) :o: :o:
Excel 4.0 (XLS/XLW BIFF4) :o:
Excel 3.0 (XLS BIFF3) :o:
Excel 2.0/2.1 (XLS BIFF2) :o: :o:
Excel支持的文本格式 :——-: :——-:
Delimiter-Separated Values(定界分隔符的值 ) (CSV/TXT) :o: :o:
Data Interchange Format(数据交换格式 (DIF) :o: :o:
Symbolic Link(符号链接) (SYLK/SLK) :o: :o:
Lotus Formatted Text(lotus格式的文本) (PRN) :o: :o:
UTF-16 Unicode Text (TXT) :o: :o:
其他工作簿/工作表格式 :——-: :——-:
OpenDocument Spreadsheet(开放文档格式的电子表格) (ODS) :o: :o:
Flat XML ODF Spreadsheet (FODS) :o: :o:
Uniform Office Format Spreadsheet (标文通 UOS1/UOS2) :o:
dBASE II/III/IV / Visual FoxPro (DBF) :o: :o:
Lotus 1-2-3 (WKS/WK1/WK2/WK3/WK4/123) :o:
Quattro Pro Spreadsheet (WQ1/WQ2/WB1/WB2/WB3/QPW) :o:
其他常用的电子表格输出格式 :——-: :——-:
HTML Tables :o: :o:
Rich Text Format tables(富文本格式表) (RTF) :o:
Ethercalc Record Format(Ethercalc记录格式) (ETH) :o: :o:

不会写入给定文件格式不支持的功能。具有范围限制的格式将会被静默截断:

Do not write functions that are not supported by the given file format. Formats with a range limit will be cut off silently:

Format Last Cell Max Cols Max Rows
Excel 2007+ XML Formats (XLSX/XLSM) XFD1048576 16384 1048576
Excel 2007+ Binary Format (XLSB BIFF12) XFD1048576 16384 1048576
Excel 97-2004 (XLS BIFF8) IV65536 256 65536
Excel 5.0/95 (XLS BIFF5) IV16384 256 16384
Excel 2.0/2.1 (XLS BIFF2) IV16384 256 16384

Excel 2003 电子表格的范围限制被Excel的版本控制,并且不会写入函数强制执行。

Excel 2003 spreadsheets are limited in scope by Excel versions and are not enforced by writing functions.

(点击显示) XlSX和XLSM文件是ZIP容器包含的与开源打包约定(Open Packaging Conventions, OPC)一致的一系列文件。大多数XLSM格式与XLSX相同,被用作文件包含宏命令。 这个格式在ECMA-376以及随后的ISO/IEC 29500都进行了标准化。Excel没有加遵循这个规范,并且还有其他文件讨论Excel如何偏离规范。
(点击显示) BIFF 2/3 XLS是二进制记录的单表流。Excel 4介绍了工作簿的原理,除了有单表的格式。结构与Lotus 1-2-3文件格式非常相似。BIFF5/8/12用了多种方式扩展格式,不过很大程度上保持了相同的记录格式。 对于这些格式没有官方的规范。Excel 95在这些格式里面可以写入文件,因此记录的长度以及字段都是由所有支持的格式以及比较文件决定。Excel 2016可以生成BIFF5文件,从XLSX或BIFF2开始启用全套文件测试。
(点击显示) BIFF8仅仅使用混合的文件二进制容器格式,将一些内容放在文件的流内。在它的核心,它将会使用来自BIFF的老版本的二进制记录格式的扩展版本。 规范覆盖了文件格式的基础,并且其他的规范扩展了属性(如特性)的规范化。
(点击显示) 在XLSX之前,SpreadsheetML文件是简单的XML文件。没有官方的并且全面的的规范,虽然MS对于这种格式有发布的文档。因此Excel 2016 生成了电子表格文件,映射功能非常简单。
(点击显示) XLSB格式与XLSX并行引入,将BIFF架构与内容分离和XLSX的ZIP容器相结合。XLSX子文件的大部分节点能用一个相应的子文件映射到XLSB记录中去。 规范包含了文件格式的基础,并且其他的规范扩展了属性(如特性)的序列化。
(点击显示) Excel CSV在许多重要的方法上背离了RFC4180。生成的CSV文件通常应该运行在Excel内,但是他们不能运行RFC4180兼容的读取器中。解析器通常理解Excel CSV。如果值不可用,写入器会为公式主动生成单元格。 Excel TXT 使用tab作为分隔符,编码页1200。 注意: - 像在Excel中,以开始的文件会被当做是符号链接(Symbolic Link)文件。不像Excel,如果文件没有一个有效的SYLK标题,他将会被主动解释为SYLK文件。为了广泛的兼容性,所有值为的单元格会自动用双引号包裹。
(点击显示) 对其他格式的支持通常远远超出XLS / XLSB / XLSX支持,这在很大程度上是由于缺乏公开可用的文档。文件通常是在各自的应用内产生,并且会与他们的导出文件相比较以确定结构。主要的关注点是数据提出。

Lotus 1-2-3 (WKS/WK1/WK2/WK3/WK4/123)

(点击显示) Lotus格式由与BIFF结构相似的二进制记录组成。Lotus几十年前发布了一份包含原始WK1格式的规范。通过生成文件和与Excel支持进行比较来推断其他功能。

Quattro Pro (WQ1/WQ2/WB1/WB2/WB3/QPW)

(点击显示) Quattro Pro格式使用与BIFF和Lotus一样的二进制记录。一些较新的格式(命名为WB3 和 QPW)使用像BIFF8 XLS一样的CFB附件。

OpenDocument Spreadsheet(开放文档格式的电子表格) (ODS/FODS)

(点击显示) ODS是一种类似于XLSX的XML-in-ZIP格式,而FODS是一种类似于SpreadsheetML的XML格式。两种格式都在OASIS标准中进行了详细的说明,不过像LO/OO工具被添加到了未公开的扩展中。解析器和编写器并没有实现全部的标准,反而重点实现了提取和存储行数据中重要的部分。

Uniform Office Spreadsheet(统一办公电子表格) (UOS1/2)

(点击显示) UOS是一种非常相似的格式,并且它有2个变种,分别对应ODS和FODS。大多数情况下,格式之间的区别是标签和属性的名称。

大多数较老的浏览器仅支持一种工作表:

Most older browsers support only one sheet:

dBASE and Visual FoxPro (DBF)

(点击显示) DBF实际上是一种类型化的表格格式:每一列只能保存一种数据类型,并且每条记录忽略类型信息。解析器生成标题行并且在工作表的第二行开始插入记录。编写器让文件和Visual FoxPro兼容。 多文件的扩展,比如内部示例和表格,目前不支持,会被在web浏览器中读取任意文件的普通能力所限制。读取器理解DBF level 7的扩展,比如DATETIME。

Symbolic Link(符号链接) (SYLK)

(点击显示) 没有真正的文档。通过各种版本的Excel中保存文件来收集所有知识,以推断出字段的含义。注意: - 简单的公式被存储在RC表单中。 - 列宽会被四舍五入成完整的字符。

Lotus Formatted Text (PRN)

(点击显示) 没有真正的文档。事实上Excel把PRN视为一种只能输出的文件格式。然而我们能够猜测列宽并且反向还原原始布局。Excel 240个字符宽度的限制不会被强制执行。

Data Interchange Format(数据交换格式) (DIF)

(点击显示) 没有统一标准的定义。 Visicalc DIF与Lotus DIF不同,并且两者都与Excel DIF不一样。在不明确的情况下,解析器/编写器遵循Excel中的预期行为。特别地,Excel以不兼容的方式扩展DIF: - 由于Excel自动将数字字符串转换为数字,数字的字符串常量被转换成公式: - DIF技术上期待数字的单元格保存原始的数字数据,不过Excel允许格式化数字(包括日期)。 - DIF技术上不支持公式,但是Excel将会转换简单公式。数组公式没有保存。

HTML

(点击显示) Excel HTML工作表包含以样式编码的特殊元数据。例如是一个包含数字格式的本地化字符串。尽管元数据的输出是有效的HTML,但是他不接受空的符号。 编写器通过标签添加类型元数据到TD元素中去。解析器检查这些标签,并且覆盖默认的解释。例如文本将会被解析成数字,不过将会被解析成文本。

Rich Text Format(富文本格式) (RTF)

(点击显示) 当复制工作表内的单元格或者范围时,Excel RTF工作表会被存储在剪贴板内。支持的编码是单词RTF支持的一个子集。

Ethercalc Record Format (ETH)

(点击显示) Ethercalc是一种开源的web电子表格,由记录格式驱动,让人联想到包含在MIME多部分消息中的SYLK。
(点击显示) 将会运行node基础的测试。默认情况下,它以各种支持的格式对文件运行测试。要测试一种指定的文件类型,设置为你想要测试的类型。使用可以获得指定功能的测试。 要想启用所有的错误,请设置环境变量: and checks are available:
(点击显示) 核心浏览器内测试可在此repo中的中找到。启动一个本地服务器并且导航到那个目录去运行测试。将会在8080端口启动一个服务。 将生成浏览器装置。要添加更多的文件,编辑并且添加路径。 要运行完整的浏览器内测试,从克隆这个repo,并且替换文件(然后打开一个浏览器窗口跳转到)。
(点击显示) - NodeJS , , , , , , , - IE 6/7/8/9/10/11 (IE 6-9 require shims) - Chrome 24+ (including Android 4.0+) - Safari 6+ (iOS and Desktop) - Edge 13+, FF 18+, and Opera 12+ 测试使用mocha测试框架。Travis-CI 和 Sauce Labs 链接: - https://travis-ci.org/SheetJS/js-xlsx 用于nodejs内的XLSX模块 - https://semaphoreci.com/sheetjs/js-xlsx 用于nodejs内的XLSX模块 - https://travis-ci.org/SheetJS/SheetJS.github.io 用于 XLS* 模块 - https://saucelabs.com/u/sheetjs 用于使用Sauce Labs的 XLS* 模块 Travis-CI测试组合也包括用于多种时区的测试。改变本地的时区,设置TZ环境可用:

测试文件被封装在另一个仓库

The test file is sealed at in another warehouse .

运行将会刷新子模块并获取子模块的文件。注意这个可能需要, , 以及其它可能不可用的命令。如果失败,请从仓库下载测试文件快照的最新版本。

Runs will refresh submodules and get files for submodules. Note that this may be necessary, as well as other commands that may not be available. If this fails, download the latest version of the snapshot from http://github.com/SheetJS/test_files/releases/download/20170409/test_files.zip (下载并解压到子目录)

由于开放规范承诺的不稳定性,确保代码是洁净室非常重要。贡献记录

Due to the volatility of open normative commitments, it is important to ensure that the code is a clean room.

文件组织 (点击显示) 在最高级别,最终脚本是文件夹中各个文件的串联。运行应该在所有平台上重现最终输出。同样,README被分成了文件夹中的位。 文件夹: | folder | contents | |:——————-|:——————————————| | | 组成最终脚本的原生源文件 | | | 组成的原生markdown文件 | | | 服务器端bin脚本 () | | | 用于Web浏览器和非标准JS环境的dist文件 | | | 针对ExtendScript和Webpack等平台的演示项目 | | | 浏览器测试 (运行 进行构建) | | | typescript定义和测试 | | | 各种各样的支持脚本 | | | 测试文件 (从测试文件仓库拉取) |

克隆仓库之后,运行将会显示一个命令列表。

After the cloned warehouse, a list of commands will be shown.

(点击显示) 文件由来自于子目录的文件构建。构建脚本(运行)将会连接各个位来产生脚本。提交一个贡献之前,确保运行将会准确地产生文件。测试的最简单方式就是添加下面的脚本: 运行产生dist文件。每一个版本中的dist文件都会被更新,并且不应该在版本之间提交
(点击显示) 包含的脚本将会从目录中构建。构建很简单: 准备开发环境: windows中可用命令的完整列表显示在中: 与测试文件中解释的一样,在windows中发布ZIP文件必须要下载和提取。如果Bash在windows内可用,可能会运行 OSX/Linux工作流。下面额步骤准备环境:
(点击显示) (Linux/OSX用/windows用)目标运行定向的功能测试。执行功能测试需要5-10秒而无需对整个测试电池进行测试。新功能应附带相关文件格式和功能的测试。 对于涉及读取端的测试,一个合适的功能测试会包括读取一个存在的文件并且检查工作簿对象的结果。如果涉及参数,文件应该读取不同的值以确保功能如预期所料工作。 对于涉及已经可以解析的新写入功能的测试,恰当的功能测试包括用这个功能写入工作簿,在之后打开并确认功能已经被保存。 对于涉及没有现有读取能力的新写入功能的测试,请添加功能测试到kitchen sink。

更多细节请查阅相关的证书。原始作者保留未由Apache 2.0许可证明确授予的所有权利。

For more details, please refer to the relevant certificate.

OSP覆盖的规格(OSP-covered Specifications) (点击显示) - : 复合文件二进制文件格式(Compound File Binary File Format) - : Excel自定义工具栏二进制文件格式(Excel Custom Toolbar Binary File Format) - : Excel计算版本2 Web服务XML架构(Excel Calculation Version 2 Web Service XML Schema) - : 开源的数据协议(Open Data Protocol) (OData) - : office绘图二进制文件格式(Office Drawing Binary File Format) - : Office开源XML结构的Office绘图扩展(Office Drawing Extensions to Office Open XML Structure) - : Office对ECMA-376标准支持的执行信息(Office Implementation Information for ECMA-376 Standards Support) - : Office文档密码学结构(Office Document Cryptography Structure) - : Office对ISO/IEC 29500标准支持的执行信息(Office Implementation Information for ISO/IEC 29500 Standards Support) - : 对象链接和嵌入数据结构(Object Linking and Embedding (OLE) Data Structures) - : 对象链接和嵌入属性设置数据结构(Object Linking and Embedding (OLE) Property Set Data Structures) - : Office对ODF 1.2标准支持的执行信息(Office Implementation Information for ODF 1.2 Standards Support) - : Office常用数据类型和对象结构(Office Common Data Types and Objects Structures) - : Office VBA文件结构(Office VBA File Format Structure) - : 电子表格数据模型文件格式(Spreadsheet Data Model File Format) - : Excel二进制文件格式(.xls)结构规范(Excel Binary File Format (.xls) Structure Specification) - : Excel (.xlsb)二进制文件格式(Excel (.xlsb) Binary File Format) - : Excel (.xlsx) Extensions to the Office Open XML SpreadsheetML File Format - : Microsoft Office Excel 97-2007 Binary File Format Specification - : 富文本(Rich Text Format)
  • ISO/IEC 29500:2012(E) “信息技术 - 文档描述和处理语言 - Office开源XML文件格式”
  • Office应用版本 1.2(2011/9/29)开源文档格式
  • 工作表文件格式(来自于Lotus) 1984年12月
美化布局示例

欧易(OKX)最新版本

【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   全球官网 大陆官网

币安(Binance)最新版本

币安交易所app【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   官网地址

火币HTX最新版本

火币老牌交易所【遇到注册下载问题请加文章最下面的客服微信】永久享受返佣20%手续费!

APP下载   官网地址
文字格式和图片示例

注册有任何问题请添加 微信:MVIP619 拉你进入群

弹窗与图片大小一致 文章转载注明

分享:

扫一扫在手机阅读、分享本文

发表评论
平台列表
美化布局示例

欧易(OKX)

  全球官网 大陆官网

币安(Binance)

  官网

火币(HTX)

  官网

Gate.io

  官网

Bitget

  官网

deepcoin

  官网
热门文章
  • 从 IPFS社区Meetup谈谈2020年的IPFS的发展历程

    从 IPFS社区Meetup谈谈2020年的IPFS的发展历程
    8月3日, IPFS社区Meetup 如期举办,这一次的社区Meetup由交流与演讲和闪电演示两部分组成,其实该会议主要带领我们回顾了IPFS在2020年的发展历程(包括项目进展、IPFS生态发展等),展示了IPFS及其生态。2020年对于IPFS而言是不平凡的一年,其唯一激励层Filecoin的主网即将上线,这让IPFS和Filecoin在全球范围内得到了前所未有的关注,也推动了IPFS的高速发展。接下来,我们一起走进IPFS在20...
  • 超10万人爆仓,比特币跳水,发生了什么

    超10万人爆仓,比特币跳水,发生了什么
    现货比特币ETF上市第二日,数字货币再迎来抛售。比特币一度跌破42000美元/枚,截止1月13日内跌幅超7%,报42562.1美元/枚。The current Bitcoin ETF is on the second day of the market and the digital currency is sold again. Bitcoin fell by over 7% to $4562.1 on 13 January.现货比特币ETF普遍跌6%左右。其中,DEFI跌...
  • 兴业基金调研远光软件、东芯股份

    兴业基金调研远光软件、东芯股份
    根据6月6日公布的公开市场信息和机构研究,世界安全基金会最近对下列两家上市公司进行了一项研究: 1) 光电软件(工程师基金参与公司专项研究) 其中一个亮点是该公司深入参与建造南方网中心和技术平台,导致南网市场在 " 九天 " 平台产品方面取得重大突破;该公司的Won-宇宙大厅已上线,而且,除了Won-宇宙之外,远洋宇宙的应用现已扩大到Won-宇宙发射、Won-宇宙-教师和政党建设-宇宙;该公司的Far-O-Cloud平台已经实现了完全成熟的国家生产,也可以在全国云中运作。...
  • 0.00003374个比特币等于多少人民币/美金

    0.00003374个比特币等于多少人民币/美金
    0.00003374比特币等于多少人民币?根据比特币对人民币的最新汇率,0.00003374比特币等于2.2826 1222美元/16.5261124728人民币。比特币(BTC)美元(USDT)人民币(CNY)0.00003374克洛克-0/22216.5261124728比特币对人民币的最新汇率为:489807.72 CNY(1比特币=489807.72人民币)(1美元=7.24人民币)(0.00003374USDT=0.0002442776 CNY)。汇率更新于2024...
  • $DOG暴涨400%,加密货币或许正在重新定义和计量“价值”

    $DOG暴涨400%,加密货币或许正在重新定义和计量“价值”
    近/克洛克-0/5,Meme币狗?走吗?去哪?那个?MOON($ DOG)连续上涨超过230%,突破前期高点,达到0.0062美元。在同一时期,比特币生态的许多主流L2协议代币下跌了50%以上。这些就是我们所说的“价值币”。虽然大起大落不能说明什么,但从过去的牛市来看,领头羊MemeCoin表现非凡。在上一轮牛市中,$DOGE的价格上涨了超过150倍,其市值接近900亿美元。还有其他MemeCoin,如$Shib、$People、$ELON、$AKITA等。2 vkwmkpm...
标签列表