From 61f61894b40bffb13405a6944e7ae582f090cfe2 Mon Sep 17 00:00:00 2001 From: jaysunxiao Date: Fri, 22 Oct 2021 16:05:45 +0800 Subject: [PATCH] =?UTF-8?q?fix[storage]:=20=E4=BF=AE=E5=A4=8D=E8=AF=AF?= =?UTF-8?q?=E5=88=A0=E9=99=A4cell=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/zfoo/storage/util/CellUtils.java | 4 +++- .../storage/resource/StudentResource.java | 5 +++++ .../test/resources/excel/StudentResource.xlsx | Bin 22016 -> 10035 bytes 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/storage/src/main/java/com/zfoo/storage/util/CellUtils.java b/storage/src/main/java/com/zfoo/storage/util/CellUtils.java index 566c68f6..d2f942d3 100644 --- a/storage/src/main/java/com/zfoo/storage/util/CellUtils.java +++ b/storage/src/main/java/com/zfoo/storage/util/CellUtils.java @@ -100,7 +100,9 @@ public abstract class CellUtils { // 普通数字 if (null != format && !format.contains(StringUtils.PERIOD)) { var longValue = (long) value; - // 对于无小数部分的数字类型,转为Long + if (longValue == value) { + return Long.valueOf(longValue); + } } return value; } diff --git a/storage/src/test/java/com/zfoo/storage/resource/StudentResource.java b/storage/src/test/java/com/zfoo/storage/resource/StudentResource.java index 3a90c377..172c26e3 100644 --- a/storage/src/test/java/com/zfoo/storage/resource/StudentResource.java +++ b/storage/src/test/java/com/zfoo/storage/resource/StudentResource.java @@ -34,6 +34,7 @@ public class StudentResource { private String name; private int age; + private float score; private String[] courses; private User[] users; private User user; @@ -55,6 +56,10 @@ public class StudentResource { return age; } + public float getScore() { + return score; + } + public String[] getCourses() { return courses; } diff --git a/storage/src/test/resources/excel/StudentResource.xlsx b/storage/src/test/resources/excel/StudentResource.xlsx index bc8190ef6a38582b23f18883cb0bcd21cb04b1c0..d7378b7a60000be9ed5a13782afd0f5c7adfa986 100644 GIT binary patch literal 10035 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 W72qH~2mqi!el!p_zW7NW!2ba{XC@B- literal 22016 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