]> source.dussan.org Git - poi.git/commitdiff
sxssf date style test
authorPJ Fanning <fanningpj@apache.org>
Tue, 7 Mar 2023 22:03:58 +0000 (22:03 +0000)
committerPJ Fanning <fanningpj@apache.org>
Tue, 7 Mar 2023 22:03:58 +0000 (22:03 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1908173 13f79535-47bb-0310-9956-ffa450edef68

poi-ooxml/src/test/java/org/apache/poi/xssf/streaming/TestSXSSFWorkbook.java

index 98d14afb40640f203582e5720e13399d7d9742c7..c0011da4e203d3519410fe7a7c671aee80fabae7 100644 (file)
@@ -34,6 +34,7 @@ import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.IOException;
+import java.time.LocalDate;
 import java.util.Arrays;
 
 import org.apache.commons.io.output.UnsynchronizedByteArrayOutputStream;
@@ -43,7 +44,9 @@ import org.apache.poi.openxml4j.opc.OPCPackage;
 import org.apache.poi.openxml4j.opc.PackageAccess;
 import org.apache.poi.ss.tests.usermodel.BaseTestXWorkbook;
 import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.CellStyle;
 import org.apache.poi.ss.usermodel.CellType;
+import org.apache.poi.ss.usermodel.DataFormatter;
 import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
@@ -648,6 +651,31 @@ public final class TestSXSSFWorkbook extends BaseTestXWorkbook {
         }
     }
 
+    @Test
+    void dateStyle() throws IOException {
+        try (
+                SXSSFWorkbook workbook = new SXSSFWorkbook();
+                UnsynchronizedByteArrayOutputStream bos = new UnsynchronizedByteArrayOutputStream()
+        ) {
+            SXSSFSheet sheet = workbook.createSheet();
+            SXSSFRow row = sheet.createRow(0);
+            SXSSFCreationHelper createHelper = (SXSSFCreationHelper) workbook.getCreationHelper();
+            CellStyle cellStyle = workbook.createCellStyle();
+            cellStyle.setDataFormat(createHelper.createDataFormat().getFormat("dd.MM.yyyy"));
+            SXSSFCell cell = row.createCell(0);
+            cell.setCellValue(LocalDate.parse("2023-03-07"));
+            cell.setCellStyle(cellStyle);
+            workbook.write(bos);
+
+            try (XSSFWorkbook xssfWorkbook = new XSSFWorkbook(bos.toInputStream())) {
+                XSSFSheet xssfSheet = xssfWorkbook.getSheetAt(0);
+                DataFormatter dataFormatter = new DataFormatter();
+                final String result = dataFormatter.formatCellValue(xssfSheet.getRow(0).getCell(0));
+                assertEquals("07.03.2023", result);
+            }
+        }
+    }
+
     @Override
     @Disabled("not implemented")
     protected void changeSheetNameWithSharedFormulas() {