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 f673fcbd fix: correct CSV physical cell count (#907)
f673fcbd is described below
commit f673fcbdb19de72ecb1f9f6cfe0d5176a70b2848
Author: Minseok Song <[email protected]>
AuthorDate: Wed May 6 00:03:12 2026 +0900
fix: correct CSV physical cell count (#907)
---
.../apache/fesod/sheet/metadata/csv/CsvRow.java | 2 +-
.../org/apache/fesod/sheet/csv/CsvFormatTest.java | 26 ++++++++++++++++++++++
2 files changed, 27 insertions(+), 1 deletion(-)
diff --git
a/fesod-sheet/src/main/java/org/apache/fesod/sheet/metadata/csv/CsvRow.java
b/fesod-sheet/src/main/java/org/apache/fesod/sheet/metadata/csv/CsvRow.java
index 1a79220d..1d11ad30 100644
--- a/fesod-sheet/src/main/java/org/apache/fesod/sheet/metadata/csv/CsvRow.java
+++ b/fesod-sheet/src/main/java/org/apache/fesod/sheet/metadata/csv/CsvRow.java
@@ -140,7 +140,7 @@ public class CsvRow implements Row {
@Override
public int getPhysicalNumberOfCells() {
- return getRowNum();
+ return cellList.size();
}
@Override
diff --git
a/fesod-sheet/src/test/java/org/apache/fesod/sheet/csv/CsvFormatTest.java
b/fesod-sheet/src/test/java/org/apache/fesod/sheet/csv/CsvFormatTest.java
index 3baefab6..63727bac 100644
--- a/fesod-sheet/src/test/java/org/apache/fesod/sheet/csv/CsvFormatTest.java
+++ b/fesod-sheet/src/test/java/org/apache/fesod/sheet/csv/CsvFormatTest.java
@@ -25,6 +25,7 @@ import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.nio.file.Files;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Date;
import java.util.List;
import lombok.extern.slf4j.Slf4j;
@@ -43,8 +44,11 @@ import
org.apache.fesod.sheet.read.metadata.holder.csv.CsvReadWorkbookHolder;
import org.apache.fesod.sheet.support.ExcelTypeEnum;
import org.apache.fesod.sheet.util.DateUtils;
import org.apache.fesod.sheet.util.TestFileUtil;
+import org.apache.fesod.sheet.write.handler.WorkbookWriteHandler;
+import
org.apache.fesod.sheet.write.handler.context.WorkbookWriteHandlerContext;
import org.apache.fesod.sheet.write.metadata.WriteSheet;
import org.apache.fesod.sheet.write.metadata.holder.WriteWorkbookHolder;
+import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Workbook;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeAll;
@@ -195,6 +199,28 @@ public class CsvFormatTest {
writeWithCommonCsv(csvFile, csvFormat, dataList(10, STRING_PREFIX));
}
+ @Test
+ public void testPhysicalNumberOfCells() {
+ csvFile = TestFileUtil.createNewFile(CSV_BASE +
"csv-physical-cell-count.csv");
+ List<List<String>> head = Arrays.asList(Arrays.asList("No"),
Arrays.asList("Name"), Arrays.asList("Age"));
+ List<List<String>> data = Arrays.asList(Arrays.asList("1", "Jackson",
"20"));
+
+ FesodSheet.write(csvFile)
+ .head(head)
+ .registerWriteHandler(new WorkbookWriteHandler() {
+ @Override
+ public void
afterWorkbookDispose(WorkbookWriteHandlerContext context) {
+ Row row = context.getWriteWorkbookHolder()
+ .getWorkbook()
+ .getSheetAt(0)
+ .getRow(0);
+ Assertions.assertEquals(3,
row.getPhysicalNumberOfCells());
+ }
+ })
+ .csv()
+ .doWrite(data);
+ }
+
private void doTest(
boolean isCreate,
File csvFile,
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]