mirror of https://github.com/alibaba/easyexcel
5 changed files with 133 additions and 46 deletions
@ -0,0 +1,30 @@
|
||||
package com.alibaba.excel.write.metadata.fill; |
||||
|
||||
import lombok.*; |
||||
|
||||
/** |
||||
* @author youlingdada |
||||
* @version 1.0 |
||||
* createDate 2023/12/16 16:06 |
||||
*/ |
||||
@Getter |
||||
@Setter |
||||
@EqualsAndHashCode |
||||
@Builder |
||||
@NoArgsConstructor |
||||
@AllArgsConstructor |
||||
public class FillIndex { |
||||
/** |
||||
* last row index |
||||
*/ |
||||
private Integer lastRowIndex; |
||||
/** |
||||
* last column index |
||||
*/ |
||||
private Integer lastColumnIndex; |
||||
|
||||
/** |
||||
* Whether the original cell is used |
||||
*/ |
||||
private Boolean isOriginalCell; |
||||
} |
@ -0,0 +1,49 @@
|
||||
package com.alibaba.easyexcel.test.temp.issue3604; |
||||
|
||||
import com.alibaba.easyexcel.test.util.TestFileUtil; |
||||
import com.alibaba.excel.EasyExcel; |
||||
import com.alibaba.excel.ExcelWriter; |
||||
import com.alibaba.excel.enums.WriteDirectionEnum; |
||||
import com.alibaba.excel.write.metadata.WriteSheet; |
||||
import com.alibaba.excel.write.metadata.fill.FillConfig; |
||||
import com.alibaba.excel.write.metadata.fill.FillWrapper; |
||||
import org.junit.jupiter.api.Test; |
||||
|
||||
import java.io.File; |
||||
import java.util.ArrayList; |
||||
import java.util.HashMap; |
||||
import java.util.List; |
||||
import java.util.Map; |
||||
|
||||
/** |
||||
* @author youlingdada |
||||
* @version 1.0 |
||||
* createDate 2023/12/16 16:40 |
||||
*/ |
||||
public class Issue3604 { |
||||
|
||||
@Test |
||||
public void test1() { |
||||
// 准备 10 行数据,基本上每行都有 aaa 和 bbb 两个 key,值分别为 a1 和 b1, a2 和 b2, ...
|
||||
// 唯独第 5 行,故意删除掉 bbb 这个 key
|
||||
List<Map<String, Object>> dataLineList = new ArrayList<>(); |
||||
for (int i = 1; i <= 10; i++) { |
||||
Map<String, Object> m = new HashMap<>(); |
||||
m.put("aaa", "a" + i); |
||||
m.put("bbb", "b" + i); |
||||
if (i == 5) { |
||||
m.remove("bbb"); |
||||
} |
||||
dataLineList.add(m); |
||||
} |
||||
String targetFile = TestFileUtil.getPath() + "temp/issue3604" + File.separator + "result3.xlsx"; |
||||
String templateFile = TestFileUtil.getPath() + "temp/issue3604" + File.separator + "template3.xlsx"; |
||||
|
||||
ExcelWriter excelWriter = EasyExcel.write(targetFile).withTemplate(templateFile).build(); |
||||
WriteSheet writeSheet = EasyExcel.writerSheet().build(); |
||||
FillConfig fillConfig = FillConfig.builder().direction(WriteDirectionEnum.VERTICAL).build(); |
||||
excelWriter.fill(new FillWrapper("dataLine", dataLineList), fillConfig, writeSheet); |
||||
excelWriter.writeContext().writeWorkbookHolder().getWorkbook().setForceFormulaRecalculation(true); |
||||
excelWriter.finish(); |
||||
} |
||||
} |
Binary file not shown.
Binary file not shown.
Loading…
Reference in new issue