This is an automated email from the ASF dual-hosted git repository.
delei pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/fesod.git
The following commit(s) were added to refs/heads/main by this push:
new c7303434 docs: fix the spaces in documents (#644)
c7303434 is described below
commit c7303434b96c1d7b2fe357f1ca070ab184927d63
Author: gaushon <[email protected]>
AuthorDate: Tue Oct 14 17:23:42 2025 +0800
docs: fix the spaces in documents (#644)
* chore: fix typo in guide.md
* chore: fix typo in docs
---
.../current/help/annotation.md | 32 ++---
.../current/help/core-class.md | 18 +--
.../current/help/large-data.md | 18 +--
.../current/help/parameter.md | 130 ++++++++++-----------
.../current/quickstart/guide.md | 4 +-
.../current/read/csv.md | 10 +-
.../current/read/num-rows.md | 2 +-
.../current/read/pojo.md | 4 +-
.../current/read/simple.md | 2 +-
.../current/write/csv.md | 10 +-
.../current/write/extra.md | 4 +-
.../current/write/format.md | 2 +-
.../current/write/head.md | 2 +-
.../current/write/pojo.md | 2 +-
.../current/write/style.md | 2 +-
15 files changed, 121 insertions(+), 121 deletions(-)
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/annotation.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/annotation.md
index 1b91f67b..9ede6f9b 100644
---
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/annotation.md
+++
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/annotation.md
@@ -15,12 +15,12 @@ title: '注解'
定义 Excel 列名和映射的字段名。 具体参数如下:
-| 名称 | 默认值 | 描述
|
-|-----------|-------------------|----------------------------------------------------------------------------------------------------------------------------------------------|
-| value | 空 | 用于匹配excel中的头,必须全匹配,如果有多行头,会匹配最后一行头
|
-| order | Integer.MAX_VALUE | 优先级高于`value`,会根据`order`的顺序来匹配实体和excel中数据的顺序
|
-| index | -1 |
优先级高于`value`和`order`,会根据`index`直接指定到excel中具体的哪一列
|
-| converter | 自动选择 |
指定当前字段用什么转换器,默认会自动选择。读的情况下只要实现`cn.idev.excel.converters.Converter#convertToJavaData(com.idev.excel.converters.ReadConverterContext<?>)`
方法即可 |
+| 名称 | 默认值 | 描述
|
+|-----------|-------------------|-----------------------------------------------------------------------------------------------------------------------------------------------|
+| value | 空 | 用于匹配 excel 中的头,必须全匹配,如果有多行头,会匹配最后一行头
|
+| order | Integer.MAX_VALUE | 优先级高于 `value`,会根据 `order` 的顺序来匹配实体和 excel
中数据的顺序
|
+| index | -1 | 优先级高于 `value` 和 `order`,会根据 `index` 直接指定到
excel 中具体的哪一列
|
+| converter | 自动选择 | 指定当前字段用什么转换器,默认会自动选择。读的情况下只要实现
`cn.idev.excel.converters.Converter#convertToJavaData(com.idev.excel.converters.ReadConverterContext<?>)`
方法即可 |
### `@ExcelIgnore`
@@ -32,21 +32,21 @@ title: '注解'
### **`@DateTimeFormat`**
-日期转换,用`String`去接收excel日期格式的数据会调用这个注解,参数如下:
+日期转换,用 `String` 去接收 excel 日期格式的数据会调用这个注解,参数如下:
-| 名称 | 默认值 | 描述
|
-|------------------|------|----------------------------------------------------------------|
-| value | 空 | 参照`java.text.SimpleDateFormat`书写即可
|
-| use1904windowing | 自动选择 |
excel中时间是存储1900年起的一个双精度浮点数,但是有时候默认开始日期是1904,所以设置这个值改成默认1904年开始 |
+| 名称 | 默认值 | 描述
|
+|------------------|------|----------------------------------------------------------------------|
+| value | 空 | 参照 `java.text.SimpleDateFormat` 书写即可
|
+| use1904windowing | 自动选择 | excel 中时间是存储 1900 年起的一个双精度浮点数,但是有时候默认开始日期是
1904,所以设置这个值改成默认 1904 年开始 |
### **`@NumberFormat`**
-数字转换,用`String`去接收excel数字格式的数据会调用这个注解。
+数字转换,用 `String` 去接收 excel 数字格式的数据会调用这个注解。
-| 名称 | 默认值 | 描述 |
-|--------------|----------------------|---------------------------------|
-| value | 空 | 参照`java.text.DecimalFormat`书写即可 |
-| roundingMode | RoundingMode.HALF_UP | 格式化的时候设置舍入模式 |
+| 名称 | 默认值 | 描述 |
+|--------------|----------------------|-----------------------------------|
+| value | 空 | 参照 `java.text.DecimalFormat` 书写即可 |
+| roundingMode | RoundingMode.HALF_UP | 格式化的时候设置舍入模式 |
### **`@ColumnWidth`**
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/core-class.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/core-class.md
index 3315ad31..f6d8fac7 100644
---
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/core-class.md
+++
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/core-class.md
@@ -21,17 +21,17 @@ title: '核心类'
对读和写操作分别有对应的 Builder 类:
-- **`ExcelReaderBuilder` 和 `ExcelWriterBuilder`**:分别为构建出一个 ReadWorkbook 和
WriteWorkbook,可以理解成一个excel对象,一个excel只要构建一个。
-- **`ExcelReaderSheetBuilder`和`ExcelWriterSheetBuilder`**:分别构建出一个 ReadSheet 和
WriteSheet对象,可以理解成excel里面的一页,每一页都要构建一个。
-- **`CsvReaderBuilder`和`CsvWriterBuilder`**:构建内部所需的 CsvFormat。
+- **`ExcelReaderBuilder` 和 `ExcelWriterBuilder`**:分别为构建出一个 ReadWorkbook 和
WriteWorkbook,可以理解成一个 excel 对象,一个 excel 只要构建一个。
+- **`ExcelReaderSheetBuilder` 和 `ExcelWriterSheetBuilder`**:分别构建出一个 ReadSheet
和 WriteSheet 对象,可以理解成 excel 里面的一页,每一页都要构建一个。
+- **`CsvReaderBuilder` 和 `CsvWriterBuilder`**:构建内部所需的 CsvFormat。
### ReadListener
-在每一行读取完毕后都会调用ReadListener来处理数据。
+在每一行读取完毕后都会调用 ReadListener 来处理数据。
### WriteHandler
-在每一个操作包括创建单元格、创建表格等都会调用WriteHandler来处理数据。
+在每一个操作包括创建单元格、创建表格等都会调用 WriteHandler 来处理数据。
所有配置都是继承的,Workbook 的配置会被 Sheet 继承,所以在用 FastExcel 设置参数的时候,在 FastExcel...sheet()
方法之前作用域是整个 sheet,在 FastExcel...csv() 方法之前作用域是整个 csv。
@@ -591,11 +591,11 @@ public void readWithExceptionHandling() {
### 概述
-`Converter`是 FastExcel 提供的接口,用于在处理 Excel
文件时对数据进行转换。允许开发者自定义操作,通过实现`Converter`接口,自定义数据转换逻辑。
+`Converter` 是 FastExcel 提供的接口,用于在处理 Excel 文件时对数据进行转换。允许开发者自定义操作,通过实现
`Converter` 接口,自定义数据转换逻辑。
### 方法
-`Converter`是一个泛型接口,泛型类型是需要被转换的对象类型(如 `Date`)。其核心方法如下:
+`Converter` 是一个泛型接口,泛型类型是需要被转换的对象类型(如 `Date`)。其核心方法如下:
| 方法名
| 描述
|
|---------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------|
@@ -605,9 +605,9 @@ public void readWithExceptionHandling() {
| `WriteCellData<?> convertToExcelData(T value, ExcelContentProperty
contentProperty, GlobalConfiguration globalConfiguration)` *(可选)* | 将 Java
对象转换为 Excel 单元格数据对象 |
| `WriteCellData<?> convertToExcelData(WriteConverterContext<T> context)`
*(可选)* | 将 Java 对象转换为
Excel 单元格数据对象 |
-FastExcel 默认提供了很多常用类型的转换器, 并已默认在`DefaultConverterLoader`中注册。
+FastExcel 默认提供了很多常用类型的转换器, 并已默认在 `DefaultConverterLoader` 中注册。
-您可以自定义转换器,但类型不能与默认的类型重复。类型注册时,使用的`ConverterKeyBuild.buildKey(converter.supportJavaTypeKey(),
converter.supportExcelTypeKey())`作为 key 值。
+您可以自定义转换器,但类型不能与默认的类型重复。类型注册时,使用的
`ConverterKeyBuild.buildKey(converter.supportJavaTypeKey(),
converter.supportExcelTypeKey())` 作为 key 值。
### 使用场景
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/large-data.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/large-data.md
index 63a1eb82..e1cf7a63 100644
---
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/large-data.md
+++
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/large-data.md
@@ -9,22 +9,22 @@ title: '大数据量文件'
### 概述
-当需要读取 10M 大小以上的文件时,Excel 03 没有办法处理,相对内存占用大很多。Excel 07
版本有个[共享字符串](https://learn.microsoft.com/en-us/office/open-xml/spreadsheet/working-with-the-shared-string-table)的概念,这个会非常占用内存,如果全部读取到内存的话,大概是
Excel 文件的大小的 3-10 倍,所以 FastExcel
用先存储文件的,然后再反序列化去读取的策略来节约内存。当然需要通过文件反序列化以后,效率会降低,大概降低
30-50%(不一定,也看命中率,可能会超过100%)。
+当需要读取 10M 大小以上的文件时,Excel 03 没有办法处理,相对内存占用大很多。Excel 07
版本有个[共享字符串](https://learn.microsoft.com/en-us/office/open-xml/spreadsheet/working-with-the-shared-string-table)的概念,这个会非常占用内存,如果全部读取到内存的话,大概是
Excel 文件的大小的 3-10 倍,所以 FastExcel
用先存储文件的,然后再反序列化去读取的策略来节约内存。当然需要通过文件反序列化以后,效率会降低,大概降低
30-50%(不一定,也看命中率,可能会超过100%)。
-如果对读取效率感觉还能接受,就用默认的,永久占用(单个 Excel 读取整个过程)一般不会超过50M(大概率就30M),剩下临时的 GC 会很快回收。
+如果对读取效率感觉还能接受,就用默认的,永久占用(单个 Excel 读取整个过程)一般不会超过 50M (大概率就 30M),剩下临时的 GC 会很快回收。
### 默认策略
-默认大文件处理会自动判断,共享字符串 5M 以下会使用内存存储,大概占用 15-50M 的内存,超过 5M
则使用文件存储,然后文件存储也要设置多内存用来存放临时的共享字符串,默认 20M。除了共享字符串占用内存外,其他占用较少,所以可以预估 10M,所以默认大概
30M 就能读取一个超级大的文件。
+默认大文件处理会自动判断,共享字符串 5M 以下会使用内存存储,大概占用 15-50M 的内存,超过 5M
则使用文件存储,然后文件存储也要设置多内存用来存放临时的共享字符串,默认 20M。除了共享字符串占用内存外,其他占用较少,所以可以预估 10M,所以默认大概
30M 就能读取一个超级大的文件。
### 配置内存
-如果想自定义设置,首先要确定大概愿意花多少内存来读取一个超级大的 Excel,比如希望读取 Excel 最多占用 100M
内存(是读取过程中永久占用,新生代马上回收的不算),那就设置使用文件来存储共享字符串的大小判断为 20M
(小于20M存内存,大于存临时文件),然后设置文件存储时临时共享字符串占用内存大小 90M 差不多。
+如果想自定义设置,首先要确定大概愿意花多少内存来读取一个超级大的 Excel,比如希望读取 Excel 最多占用 100M
内存(是读取过程中永久占用,新生代马上回收的不算),那就设置使用文件来存储共享字符串的大小判断为 20M (小于 20M
存内存,大于存临时文件),然后设置文件存储时临时共享字符串占用内存大小 90M 差不多。
如果最大文件条数也就十几二十万,然后 Excel 也就是十几二十M,而且不会有很高的并发,内存也较大
```java
-// 强制使用内存存储,这样大概一个 20M 的 Excel 使用 150M(很多临时对象,所以100M会一直GC)的内存
+// 强制使用内存存储,这样大概一个 20M 的 Excel 使用 150M(很多临时对象,所以 100M 会一直 GC)的内存
// 这样效率会比上面的复杂的策略高很多
// 这里再说明下 就是加了个readCache(new MapCache()) 参数而已,其他的参照其他示例写
FastExcel.read().readCache(new MapCache());
@@ -33,9 +33,9 @@ FastExcel.read().readCache(new MapCache());
对并发要求较高,而且都是经常有超级大文件
```java
-// 第一个参数的意思是多少M共享字符串以后,采用文件存储(单位MB,默认5M)
-// 第二个参数 文件存储时,内存存放多少M缓存数据,默认20M
-// 比如 你希望用 100M 内存(这里说的是解析过程中的永久占用,临时对象不算)来解析excel,前面算过了,大概是
20M+90M,所以设置参数为:20 和 90
+// 第一个参数的意思是多少M共享字符串以后,采用文件存储(单位 MB,默认 5M)
+// 第二个参数 文件存储时,内存存放多少M缓存数据,默认 20M
+// 比如 你希望用 100M 内存(这里说的是解析过程中的永久占用,临时对象不算)来解析excel,前面算过了,大概是
20M+90M,所以设置参数为:20 和 90
// 这里再说明下 就是加了个 readCacheSelector(new SimpleReadCacheSelector(5, 20))
参数而已,其他的参照其他示例写
FastExcel.read().readCacheSelector(new SimpleReadCacheSelector(5, 20));
```
@@ -44,4 +44,4 @@ FastExcel.read().readCacheSelector(new
SimpleReadCacheSelector(5, 20));
FastExcel 在使用文件存储的时候,会把共享字符串拆分成 **1000** 条一批,然后放到文件存储。然后 Excel
来读取共享字符串大概率是按照顺序的,所以默认 20M 的 1000
条的数据放在内存,命中后直接返回,没命中去读文件。所以不能设置太小,太小了,很难命中,一直去读取文件,太大了的话会占用过多的内存。
-判断 maxCacheActivateSize是否需要调整,开启`debug`日志会输出`Already put :4000000`
最后一次输出,大概可以得出值为 400W,然后看`Cache misses count:4001`得到值为 4K,`400W/4K=1000` 这代表已经
`maxCacheActivateSize` 已经非常合理了。如果小于 500 问题就非常大了,500 到 1000 应该都还行。
+判断 maxCacheActivateSize 是否需要调整,开启 `debug` 日志会输出 `Already put :4000000`
最后一次输出,大概可以得出值为 400W,然后看`Cache misses count:4001`得到值为 4K,`400W/4K=1000` 这代表已经
`maxCacheActivateSize` 已经非常合理了。如果小于 500 问题就非常大了,500 到 1000 应该都还行。
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/parameter.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/parameter.md
index 380252a8..f44d2f29 100644
---
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/parameter.md
+++
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/help/parameter.md
@@ -99,102 +99,102 @@ WriteWorkbook --|> WriteBasicParameter
## 通用参数
-所有参数,都继承自`BasicParameter`
-
-| 名称 | 默认值 | 描述
|
-|---------------------|--------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| head | 空 |
与`clazz`二选一。读取文件头对应的列表,会根据列表匹配数据,建议使用class
|
-| clazz | 空 |
与`head`二选一。读取文件的头对应的class,也可以使用注解。如果两个都不指定,则会读取全部数据
|
-| customConverterList | 空 | 默认加载了很多转换器,这里可以加入不支持的字段
|
-| autoTrim | true | 会对表头、读取数据等进行自动去除前后空格
|
-| use1904windowing | false |
excel中时间是存储1900年起的一个双精度浮点数,但是有时候默认开始日期是1904,所以设置这个值改成默认1904年开始
|
-| useScientificFormat | false | 数字转文本的时候在较大的数值的是否是否采用科学计数法
|
-| locale | 空 | 此参数用于格式化日期和数字
|
-| filedCacheLocation | THREAD_LOCAL | 解析class的field会有缓存,默认放到ThreadLocal
,也就是说每次读写都会重新解析class,可以反射修改class的注解,并发场景不会相互影响<br/>THREAD_LOCAL:默认,每次读写都会缓存,但是不是同一次不会影响<br/>MEMORY:放到全局的内存里面,理论上性能会更好,但是无法通过反射、排除等方法修改导出的对象<br/>NONE:不缓存,性能会变差,涉及到读的同时要写,而且还要反射、排除等方法去修改对象的情况下可以考虑使用。
|
+所有参数,都继承自 `BasicParameter`
+
+| 名称 | 默认值 | 描述
|
+|---------------------|--------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| head | 空 | 与 `clazz` 二选一。读取文件头对应的列表,会根据列表匹配数据,建议使用
class
|
+| clazz | 空 | 与 `head`
二选一。读取文件的头对应的class,也可以使用注解。如果两个都不指定,则会读取全部数据
|
+| customConverterList | 空 | 默认加载了很多转换器,这里可以加入不支持的字段
|
+| autoTrim | true | 会对表头、读取数据等进行自动去除前后空格
|
+| use1904windowing | false | excel 中时间是存储 1900
年起的一个双精度浮点数,但是有时候默认开始日期是 1904,所以设置这个值改成默认 1904 年开始
|
+| useScientificFormat | false | 数字转文本的时候在较大的数值的是否是否采用科学计数法
|
+| locale | 空 | 此参数用于格式化日期和数字
|
+| filedCacheLocation | THREAD_LOCAL | 解析 class 的 field 会有缓存,默认放到 ThreadLocal
,也就是说每次读写都会重新解析 class,可以反射修改 class
的注解,并发场景不会相互影响<br/>THREAD_LOCAL:默认,每次读写都会缓存,但是不是同一次不会影响<br/>MEMORY:放到全局的内存里面,理论上性能会更好,但是无法通过反射、排除等方法修改导出的对象<br/>NONE:不缓存,性能会变差,涉及到读的同时要写,而且还要反射、排除等方法去修改对象的情况下可以考虑使用。
|
## 读操作
### ReadBasicParameter 通用参数
-| 名称 | 默认值 | 描述 |
-|------------------------|-----|-----------------------------------|
-| customReadListenerList | 空 | 可以注册多个监听器,读取excel的时候会不断的回调监听器中的方法 |
-| headRowNumber | 1 | excel中头的行数,默认1行 |
+| 名称 | 默认值 | 描述 |
+|------------------------|-----|-------------------------------------|
+| customReadListenerList | 空 | 可以注册多个监听器,读取 excel 的时候会不断的回调监听器中的方法 |
+| headRowNumber | 1 | excel 中头的行数,默认 1 行 |
### ReadWorkbook 参数
-| 名称 | 默认值 | 描述
|
-|--------------------------|-------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| excelType | 空 |
当前excel的类型,支持XLS、XLSX、CSV
|
-| inputStream | 空 |
与`file`二选一。读取文件的流,如果接收到的是流就只用,不用流建议使用`file`参数。因为使用了`inputStream`
FastExcel会帮忙创建临时文件,最终还是`file`
|
-| file | 空 |
与`inputStream`二选一。读取文件的文件。
|
-| mandatoryUseInputStream | false | 强制使用 `inputStream`
来创建对象,性能会变差,但是不会创建临文件。
|
-| charset | Charset#defaultCharset | 只有csv文件有用,读取文件的时候使用的编码
|
-| autoCloseStream | true | 自动关闭读取的流。
|
-| readCache | 空 | 默认小于5M用 内存,超过5M会使用
`EhCache`,这里不建议使用这个参数。
|
-| readCacheSelector | SimpleReadCacheSelector |
用于选择什么时候用内存去存储临时数据,什么时候用磁盘存储临时数据
|
-| ignoreEmptyRow | true | 忽略空的行
|
-| password | 空 | 读取文件的密码
|
-| xlsxSAXParserFactoryName | 空 |
指定sax读取使用的class的名称,例如:`com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl`
|
-| useDefaultListener | true |
默认会加入`ModelBuildEventListener`
来帮忙转换成传入`class`的对象,设置成`false`后将不会协助转换对象,自定义的监听器会接收到`Map<Integer,CellData>`对象,如果还想继续接听到`class`对象,请调用`readListener`方法,加入自定义的`beforeListener`、
`ModelBuildEventListener`、 自定义的`afterListener`即可。
|
-| extraReadSet | 空 | 额外需要读取内容的set,默认不读取这些数据
|
-| readDefaultReturn | STRING |
STRING:会返回一个Map<IntegerString>的数组,返回值就是你在excel里面不点击单元格看到的内容<br/>
ACTUAL_DATA:会返回一个Map<Integer,Object>的数组,返回实际上存储的数据,会帮自动转换类型,Object类型为`BigDecimal`、`Boolean`、`String`、`LocalDateTime`、null,中的一个,<br/>READ_CELL_DATA:
会返回一个Map<Integer,ReadCellData<?>>的数组,其中`?`类型参照ACTUAL_DATA的 |
-| customObject | STRING |
STRING:会返回一个Map<IntegerString>的数组,返回值就是你在excel里面不点击单元格看到的内容<br/>
ACTUAL_DATA:会返回一个Map<Integer,Object>的数组,返回实际上存储的数据,会帮自动转换类型,Object类型为`BigDecimal`、`Boolean`、`String`、`LocalDateTime`、null,中的一个,<br/>READ_CELL_DATA:
会返回一个Map<Integer,ReadCellData<?>>的数组,其中`?`类型参照ACTUAL_DATA的 |
-| numRows | 0 | 读取指定的行数,0表示不限制行数,即读取所有行
|
-| ignoreHiddenSheet | true | `@since 1.3.0`<br/>
忽略隐藏的sheet
|
-| csvFormat | CSVFormat.DEFAULT | `@since 1.3.0`<br/> 设置
CSVFormat 对象,仅对 csv 文件有效
|
+| 名称 | 默认值 | 描述
|
+|--------------------------|-------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| excelType | 空 | 当前 excel 的类型,支持
XLS、XLSX、CSV
|
+| inputStream | 空 | 与 `file`
二选一。读取文件的流,如果接收到的是流就只用,不用流建议使用 `file` 参数。因为使用了 `inputStream`,FastExcel
会帮忙创建临时文件,最终还是 `file`
|
+| file | 空 | 与 `inputStream`
二选一。读取文件的文件。
|
+| mandatoryUseInputStream | false | 强制使用 `inputStream`
来创建对象,性能会变差,但是不会创建临文件。
|
+| charset | Charset#defaultCharset | 只有csv文件有用,读取文件的时候使用的编码
|
+| autoCloseStream | true | 自动关闭读取的流。
|
+| readCache | 空 | 默认小于 5M 用 内存,超过 5M 会使用
`EhCache`,这里不建议使用这个参数。
|
+| readCacheSelector | SimpleReadCacheSelector |
用于选择什么时候用内存去存储临时数据,什么时候用磁盘存储临时数据
|
+| ignoreEmptyRow | true | 忽略空的行
|
+| password | 空 | 读取文件的密码
|
+| xlsxSAXParserFactoryName | 空 | 指定 sax 读取使用的 class
的名称,例如:`com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl`
|
+| useDefaultListener | true | 默认会加入
`ModelBuildEventListener` 来帮忙转换成传入 `class` 的对象,设置成 `false`
后将不会协助转换对象,自定义的监听器会接收到 `Map<Integer,CellData>` 对象,如果还想继续接听到 `class` 对象,请调用
`readListener` 方法,加入自定义的
`beforeListener`、`ModelBuildEventListener`、`afterListener` 即可。
|
+| extraReadSet | 空 | 额外需要读取内容的 set,默认不读取这些数据
|
+| readDefaultReturn | STRING | STRING:会返回一个
Map<Integer, String> 的数组,返回值就是你在 excel 里面不点击单元格看到的内容<br/>
ACTUAL_DATA:会返回一个 Map<Integer, Object> 的数组,返回实际上存储的数据,会帮自动转换类型,Object 类型为
`BigDecimal`、`Boolean`、`String`、`LocalDateTime`、null,中的一个,<br/>READ_CELL_DATA:
会返回一个Map<Integer,ReadCellData<?>>的数组,其中`?`类型参照 ACTUAL_DATA的 |
+| customObject | STRING | STRING:会返回一个
Map<Integer, String> 的数组,返回值就是你在 excel 里面不点击单元格看到的内容<br/>
ACTUAL_DATA:会返回一个 Map<Integer, Object> 的数组,返回实际上存储的数据,会帮自动转换类型,Object 类型为
`BigDecimal`、`Boolean`、`String`、`LocalDateTime`、null,中的一个,<br/>READ_CELL_DATA:
会返回一个Map<Integer,ReadCellData<?>>的数组,其中`?`类型参照 ACTUAL_DATA的 |
+| numRows | 0 | 读取指定的行数,0
表示不限制行数,即读取所有行
|
+| ignoreHiddenSheet | true | `@since 1.3.0`<br/>
忽略隐藏的 sheet
|
+| csvFormat | CSVFormat.DEFAULT | `@since 1.3.0`<br/> 设置
CSVFormat 对象,仅对 csv 文件有效
|
### ReadSheet 参数
-| 名称 | 默认值 | 描述 |
-|-----------------|-------|---------------------------------|
-| sheetNo | 0 | 需要读取Sheet的编码,建议使用这个来指定读取哪个Sheet |
-| sheetName | 空 | 根据名字去匹配Sheet |
-| sheetHidden | false | Sheet 页普通隐藏状态 |
-| sheetVeryHidden | false | Sheet 页绝对隐藏状态 |
-| numRows | 0 | 读取指定的行数,0表示不限制行数,即读取所有行 |
+| 名称 | 默认值 | 描述 |
+|-----------------|-------|------------------------------------|
+| sheetNo | 0 | 需要读取 Sheet 的编码,建议使用这个来指定读取哪个 Sheet |
+| sheetName | 空 | 根据名字去匹配 Sheet |
+| sheetHidden | false | Sheet 页普通隐藏状态 |
+| sheetVeryHidden | false | Sheet 页绝对隐藏状态 |
+| numRows | 0 | 读取指定的行数,0 表示不限制行数,即读取所有行 |
## 写操作
### WriteBasicParameter 通用参数
-| 名称 | 默认值 | 描述
|
-|-------------------------|-------|------------------------------------------------------------------------------------------------------------|
-| customWriteHandlerList | 空 |
写的处理器。可以实现`WorkbookWriteHandler`,`SheetWriteHandler`,`RowWriteHandler`,`CellWriteHandler`,在写入excel的不同阶段会调用
|
-| relativeHeadRowIndex | 0 | 写入到excel和上面空开几行
|
-| needHead | true | 是否需要写入头到excel
|
-| useDefaultStyle | true | 是否使用默认的样式
|
-| automaticMergeHead | true | 自动合并头,头中相同的字段上下左右都会去尝试匹配
|
-| excludeColumnIndexes | 空 | 需要排除对象中的index的数据
|
-| excludeColumnFieldNames | 空 | 需要排除对象中的字段的数据
|
-| includeColumnIndexes | 空 | 只要导出对象中的index的数据
|
-| includeColumnFieldNames | 空 | 只要导出对象中的字段的数据
|
-| orderByIncludeColumn | false | 在使用了参数includeColumnFieldNames 或者
includeColumnIndexes的时候,会根据传入集合的顺序排序 |
+| 名称 | 默认值 | 描述
|
+|-------------------------|-------|---------------------------------------------------------------------------------------------------------------|
+| customWriteHandlerList | 空 | 写的处理器。可以实现
`WorkbookWriteHandler`,`SheetWriteHandler`,`RowWriteHandler`,`CellWriteHandler`,在写入
excel 的不同阶段会调用 |
+| relativeHeadRowIndex | 0 | 写入到 excel 和上面空开几行
|
+| needHead | true | 是否需要写入头到 excel
|
+| useDefaultStyle | true | 是否使用默认的样式
|
+| automaticMergeHead | true | 自动合并头,头中相同的字段上下左右都会去尝试匹配
|
+| excludeColumnIndexes | 空 | 需要排除对象中的 index 的数据
|
+| excludeColumnFieldNames | 空 | 需要排除对象中的字段的数据
|
+| includeColumnIndexes | 空 | 只要导出对象中的 index 的数据
|
+| includeColumnFieldNames | 空 | 只要导出对象中的字段的数据
|
+| orderByIncludeColumn | false | 在使用了参数 includeColumnFieldNames 或者
includeColumnIndexes的时候,会根据传入集合的顺序排序 |
### WriteWorkbook 参数
| 名称 | 默认值 | 描述
|
|-------------------------|------------------------|-------------------------------------------------|
-| excelType | 空 | 当前excel的类型,支持XLS、XLSX、CSV
|
-| outputStream | 空 | 与`file`二选一。写入文件的流
|
-| file | 空 | 与`outputStream`二选一。写入的文件
|
+| excelType | 空 | 当前 excel 的类型,支持
XLS、XLSX、CSV |
+| outputStream | 空 | 与 `file` 二选一。写入文件的流
|
+| file | 空 | 与 `outputStream`
二选一。写入的文件 |
| templateInputStream | 空 | 模板的文件流
|
| templateFile | 空 | 模板文件
|
-| charset | Charset#defaultCharset | 只有csv文件有用,写入文件的时候使用的编码
|
+| charset | Charset#defaultCharset | 只有 csv 文件有用,写入文件的时候使用的编码
|
| autoCloseStream | true | 自动关闭写入的流。
|
| password | 空 | 读取文件的密码
|
-| inMemory | false |
是否在内存处理,默认会生成临时文件以节约内存。内存模式效率会更好,但是容易OOM |
+| inMemory | false |
是否在内存处理,默认会生成临时文件以节约内存。内存模式效率会更好,但是容易 OOM |
| writeExcelOnException | false |
写入过程中抛出异常了,是否尝试把数据写入到excel |
| withBom | true | 在 csv 文件中设置编码前缀,否则 office
软件可能会显示乱码 |
-| mandatoryUseInputStream | false | 强制使用 `outputStream`
来创建对象,性能会变差,但是不会创建临文件 |
+| mandatoryUseInputStream | false | 强制使用 `outputStream`
来创建对象,性能会变差,但是不会创建临文件 |
| csvFormat | CSVFormat.DEFAULT | `@since 1.3.0`<br/> 设置
CSVFormat 对象,仅对 csv 文件有效 |
### WriteSheet 参数
-| 名称 | 默认值 | 描述 |
-|-----------|-----|--------------------------|
-| sheetNo | 0 | 需要写入的编码 |
-| sheetName | 空 | 需要写的Sheet名称,默认同`sheetNo` |
+| 名称 | 默认值 | 描述 |
+|-----------|-----|-----------------------------|
+| sheetNo | 0 | 需要写入的编码 |
+| sheetName | 空 | 需要写的 Sheet 名称,默认同 `sheetNo` |
### WriteTable 参数
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/quickstart/guide.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/quickstart/guide.md
index d5a843df..267585cd 100644
---
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/quickstart/guide.md
+++
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/quickstart/guide.md
@@ -16,14 +16,14 @@ title: '指南'
| 1.1.x | jdk8 - jdk21 | |
| 1.0.x | jdk8 - jdk21 | |
-我们强烈建议您使用最新版本的 FastExcel,因为最新版本中的性能优化、BUG修复和新功能都会让您的使用更加方便。
+我们强烈建议您使用最新版本的 FastExcel,因为最新版本中的性能优化、BUG 修复和新功能都会让您的使用更加方便。
> 当前 FastExcel 底层使用 poi 作为基础包,如果您的项目中已经有 poi 相关组件,需要您手动排除 poi 的相关 jar 包。
## 版本更新
您可以在 [版本升级详情](https://github.com/fast-excel/fastexcel/blob/main/CHANGELOG.md)
-中查询到具体的版本更新细节。您也可以在[Maven
中心仓库](https://mvnrepository.com/artifact/cn.idev.excel/fastexcel)
+中查询到具体的版本更新细节。您也可以在 [Maven
中心仓库](https://mvnrepository.com/artifact/cn.idev.excel/fastexcel)
中查询到所有的版本。
## Maven
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/csv.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/csv.md
index 71ce9020..7693d955 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/csv.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/csv.md
@@ -9,7 +9,7 @@ title: 'CSV'
## 概述
-FastExcel 通过不同的参数设计进行 CSV 的读取。其底层使用了[Apache Commons
CSV](https://commons.apache.org/proper/commons-csv),也支持通过直接设置[CSVFormat](https://commons.apache.org/proper/commons-csv/apidocs/org/apache/commons/csv/CSVFormat.html)进行设定来达成读取的目标。
+FastExcel 通过不同的参数设计进行 CSV 的读取。其底层使用了 [Apache Commons
CSV](https://commons.apache.org/proper/commons-csv),也支持通过直接设置
[CSVFormat](https://commons.apache.org/proper/commons-csv/apidocs/org/apache/commons/csv/CSVFormat.html)
进行设定来达成读取的目标。
主要的参数如下:
@@ -29,7 +29,7 @@ FastExcel 通过不同的参数设计进行 CSV 的读取。其底层使用了[A
### delimiter
-`delimiter` 用于指定 CSV 文件中的字段分隔符。默认值为英文逗号 `,`。同时,FastExcel
提供了一些常量`CsvConstant`,用于简化使用
+`delimiter` 用于指定 CSV 文件中的字段分隔符。默认值为英文逗号 `,`。同时,FastExcel 提供了一些常量
`CsvConstant`,用于简化使用。
#### 代码示例
@@ -50,7 +50,7 @@ public void delimiterDemo() {
`quote` 用于指定包裹字段的引用符号。默认值为双引号 `"`。当字段内容本身包含分隔符或换行符时,建议设置。
-> 注意不可和 `recordSeparator` 的设置重复,建议结合`QuoteMode`使用
+> 注意不可和 `recordSeparator` 的设置重复,建议结合 `QuoteMode` 使用
#### 代码示例
@@ -116,9 +116,9 @@ public void escapeDemo() {
}
```
-## CSVFormat设置详解与示例
+## CSVFormat 设置详解与示例
-支持直接构建一个`CSVFormat`对象。
+支持直接构建一个 `CSVFormat` 对象。
> 目前 FastExcel 仍然支持,但并非最推荐的使用方法。
### 代码示例
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/num-rows.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/num-rows.md
index e45d0014..20c756d4 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/num-rows.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/num-rows.md
@@ -9,7 +9,7 @@ title: '行数'
## 概述
-在数据分析和处理过程中,快速查看 Excel 文件的前几行内容可以帮助我们更好地理解数据结构和内容。默认情况下,FastExcel 会读取整个 Excel
文件的所有数据,通过设置`numRows`参数可以限制读取的行数。0表示不限制行数,即读取所有行,行数包括表头行。
+在数据分析和处理过程中,快速查看 Excel 文件的前几行内容可以帮助我们更好地理解数据结构和内容。默认情况下,FastExcel 会读取整个 Excel
文件的所有数据,通过设置 `numRows` 参数可以限制读取的行数。0 表示不限制行数,即读取所有行,行数包括表头行。
## 所有的 Sheet
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/pojo.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/pojo.md
index c83936c3..e45a53b0 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/pojo.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/pojo.md
@@ -15,7 +15,7 @@ title: '实体类'
### 示例代码
-#### POJO类
+#### POJO 类
```java
@Getter
@@ -54,7 +54,7 @@ public void indexOrNameRead() {
使用 `CellData` 类型接收单元格数据以支持公式和多种单元格格式。
-### POJO类
+### POJO 类
```java
@Getter
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/simple.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/simple.md
index 63fe5441..baa23364 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/simple.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/read/simple.md
@@ -21,7 +21,7 @@ FastExcel 提供监听器机制,用于在读取 Excel 文件时对每一行数
监听器不能被 Spring 管理,每次读取 Excel 文件时需要重新实例化。
-#### `Lambda`表达式
+#### `Lambda` 表达式
```java
@Test
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/csv.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/csv.md
index 957535b6..4ccc060d 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/csv.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/csv.md
@@ -9,7 +9,7 @@ title: 'CSV'
## 概述
-FastExcel 通过不同的参数设计进行 CSV 的写入。其底层使用了[Apache Commons
CSV](https://commons.apache.org/proper/commons-csv),也支持通过直接设置[CSVFormat](https://commons.apache.org/proper/commons-csv/apidocs/org/apache/commons/csv/CSVFormat.html)进行设定来达成写入的目标。
+FastExcel 通过不同的参数设计进行 CSV 的写入。其底层使用了 [Apache Commons
CSV](https://commons.apache.org/proper/commons-csv),也支持通过直接设置
[CSVFormat](https://commons.apache.org/proper/commons-csv/apidocs/org/apache/commons/csv/CSVFormat.html)
进行设定来达成写入的目标。
主要的参数如下:
@@ -29,7 +29,7 @@ FastExcel 通过不同的参数设计进行 CSV 的写入。其底层使用了[A
### delimiter
-`delimiter` 用于指定 CSV 文件中的字段分隔符。默认值为英文逗号 `,`。同时,FastExcel
提供了一些常量`CsvConstant`,用于简化使用。
+`delimiter` 用于指定 CSV 文件中的字段分隔符。默认值为英文逗号 `,`。同时,FastExcel 提供了一些常量
`CsvConstant`,用于简化使用。
#### 代码示例
@@ -100,7 +100,7 @@ public void nullStringDemo() {
### escape
-`escape` 用于指定转义字符。当使用了`escape`,输出的CSV有包含会保留显示。
+`escape` 用于指定转义字符。当使用了 `escape`,输出的 CSV 有包含会保留显示。
#### 代码示例
@@ -115,9 +115,9 @@ public void escapeDemo() {
}
```
-## CSVFormat设置详解与示例
+## CSVFormat 设置详解与示例
-支持直接构建一个`CSVFormat`对象。
+支持直接构建一个 `CSVFormat` 对象。
> 目前 FastExcel 仍然支持,但并非最推荐的使用方法。
### 代码示例
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/extra.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/extra.md
index 42a27e86..5a4d434d 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/extra.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/extra.md
@@ -61,7 +61,7 @@ public void commentWrite() {
写入额外的超链接信息
-### POJO类
+### POJO 类
```java
@Getter
@@ -98,7 +98,7 @@ public void writeHyperlinkDataWrite() {
写入额外的公式信息
-### POJO类
+### POJO 类
```java
@Getter
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/format.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/format.md
index 695fd5aa..d35089eb 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/format.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/format.md
@@ -13,7 +13,7 @@ title: '格式化'
支持日期、数字或其他自定义格式,通过注解实现。
-### POJO类
+### POJO 类
```java
@Getter
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/head.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/head.md
index eaf46468..522f3a0e 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/head.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/head.md
@@ -13,7 +13,7 @@ title: '表头'
支持设置多级表头,通过 `@ExcelProperty` 注解指定主标题和子标题。
-### POJO类
+### POJO 类
```java
@Getter
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/pojo.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/pojo.md
index 9fdf9948..fd674a33 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/pojo.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/pojo.md
@@ -57,7 +57,7 @@ public void excludeOrIncludeWrite() {
通过 `@ExcelProperty` 注解的 `index` 属性指定列顺序。
-### POJO类
+### POJO 类
```java
@Getter
diff --git
a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/style.md
b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/style.md
index 360347ae..562cc9c7 100644
--- a/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/style.md
+++ b/website/i18n/zh-cn/docusaurus-plugin-content-docs/current/write/style.md
@@ -203,7 +203,7 @@ public void poiStyleWrite() {
通过注解控制列宽、行高,适用于对表格格式有特定要求的场景。
-### POJO类
+### POJO 类
```java
@Getter
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]