2020
2121import java .sql .Date ;
2222import java .time .Instant ;
23+ import java .time .LocalDate ;
24+ import java .time .LocalDateTime ;
25+ import java .time .ZonedDateTime ;
2326
2427@ FunctionalInterface
2528public interface CellStyle {
@@ -40,12 +43,22 @@ public interface CellStyle {
4043 * @param style the style.
4144 */
4245 public static void writeStyled (Worksheet worksheet , int row , int column , Object value , CellStyle style ) {
43- if (value instanceof Instant ) {
46+ if (value instanceof LocalDate ) {
47+ worksheet .value (row , column , (LocalDate ) value );
48+ } else if (value instanceof LocalDateTime ) {
49+ worksheet .value (row , column , (LocalDateTime ) value );
50+ } else if (value instanceof ZonedDateTime ) {
51+ worksheet .value (row , column , (ZonedDateTime ) value );
52+ } else if (value instanceof Instant ) {
4453 worksheet .value (row , column , Date .from ((Instant ) value ));
54+ } else if (value instanceof Date ) {
55+ worksheet .value (row , column , (Date ) value );
4556 } else if (value instanceof Boolean ) {
4657 worksheet .value (row , column , (Boolean )value ? "True" : "False" );
58+ } else if (value instanceof Number ) {
59+ worksheet .value (row , column , (Number ) value );
4760 } else {
48- worksheet .value (row , column , value );
61+ worksheet .value (row , column , value != null ? value . toString () : null );
4962 }
5063
5164 if (style != null ) {
0 commit comments