11package cn .idev .excel .celldata ;
22
33import cn .idev .excel .FastExcel ;
4+ import cn .idev .excel .context .AnalysisContext ;
45import cn .idev .excel .enums .CellDataTypeEnum ;
6+ import cn .idev .excel .event .AnalysisEventListener ;
57import cn .idev .excel .metadata .data .FormulaData ;
68import cn .idev .excel .metadata .data .WriteCellData ;
79import cn .idev .excel .util .DateUtils ;
810import cn .idev .excel .util .TestFileUtil ;
9- import java .io .File ;
10- import java .math .BigDecimal ;
11- import java .util .ArrayList ;
12- import java .util .List ;
11+ import lombok .extern .slf4j .Slf4j ;
12+ import org .junit .jupiter .api .Assertions ;
1313import org .junit .jupiter .api .BeforeAll ;
1414import org .junit .jupiter .api .MethodOrderer ;
1515import org .junit .jupiter .api .Test ;
1616import org .junit .jupiter .api .TestMethodOrder ;
1717
18- /**
19- *
20- */
18+ import java .io .File ;
19+ import java .math .BigDecimal ;
20+ import java .util .ArrayList ;
21+ import java .util .List ;
22+
2123@ TestMethodOrder (MethodOrderer .MethodName .class )
24+ @ Slf4j
2225public class CellDataDataTest {
2326
2427 private static File file07 ;
2528 private static File file03 ;
2629 private static File fileCsv ;
30+ private static File file07_formula ;
2731
2832 @ BeforeAll
2933 public static void init () {
3034 file07 = TestFileUtil .createNewFile ("cellData07.xlsx" );
3135 file03 = TestFileUtil .createNewFile ("cellData03.xls" );
32- fileCsv = TestFileUtil .createNewFile ("cellDataCsv.csv" );
36+ fileCsv = TestFileUtil .readFile ("cellDataCsv.csv" );
37+ file07_formula = TestFileUtil .readFile ("celldata" + File .separator + "celldata_formula.xlsx" );
3338 }
3439
3540 @ Test
@@ -47,6 +52,25 @@ public void t03ReadAndWriteCsv() throws Exception {
4752 readAndWrite (fileCsv );
4853 }
4954
55+ @ Test
56+ public void t04ReadFormula07 () throws Exception {
57+ FastExcel .read (file07_formula , CellDataReadData .class , new AnalysisEventListener <CellDataReadData >() {
58+ @ Override
59+ public void invoke (CellDataReadData data , AnalysisContext context ) {
60+ Assertions .assertNotNull (
61+ data .getFormulaValue ().getFormulaData ().getFormulaValue ());
62+ log .info (
63+ "row formula: {}" ,
64+ data .getFormulaValue ().getFormulaData ().getFormulaValue ());
65+ }
66+
67+ @ Override
68+ public void doAfterAllAnalysed (AnalysisContext context ) {
69+ }
70+ })
71+ .doReadAll ();
72+ }
73+
5074 private void readAndWrite (File file ) throws Exception {
5175 FastExcel .write (file , CellDataWriteData .class ).sheet ().doWrite (data ());
5276 FastExcel .read (file , CellDataReadData .class , new CellDataDataListener ())
0 commit comments