Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
金手指1668
easyexcel
提交
c598a704
E
easyexcel
项目概览
金手指1668
/
easyexcel
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
E
easyexcel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c598a704
编写于
10月 15, 2018
作者:
J
jipengfei.jpf
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
阿里內部最新版本开源,为了稳定性07版本解析修改为底层使用POI解析。
上级
bde93f94
变更
26
显示空白变更内容
内联
并排
Showing
26 changed file
with
83 addition
and
25 deletion
+83
-25
src/main/java/com/alibaba/excel/ExcelReader.java
src/main/java/com/alibaba/excel/ExcelReader.java
+27
-0
src/main/java/com/alibaba/excel/analysis/v07/XlsxRowHandler.java
...n/java/com/alibaba/excel/analysis/v07/XlsxRowHandler.java
+0
-1
src/main/java/com/alibaba/excel/analysis/v07/XlsxSaxAnalyser.java
.../java/com/alibaba/excel/analysis/v07/XlsxSaxAnalyser.java
+0
-1
src/main/java/com/alibaba/excel/annotation/ExcelColumnNum.java
...ain/java/com/alibaba/excel/annotation/ExcelColumnNum.java
+0
-1
src/main/java/com/alibaba/excel/context/GenerateContextImpl.java
...n/java/com/alibaba/excel/context/GenerateContextImpl.java
+1
-0
src/main/java/com/alibaba/excel/event/AnalysisEventRegisterCenter.java
.../com/alibaba/excel/event/AnalysisEventRegisterCenter.java
+3
-3
src/main/java/com/alibaba/excel/event/OneRowAnalysisFinishEvent.java
...va/com/alibaba/excel/event/OneRowAnalysisFinishEvent.java
+0
-1
src/main/java/com/alibaba/excel/metadata/CellRange.java
src/main/java/com/alibaba/excel/metadata/CellRange.java
+0
-1
src/main/java/com/alibaba/excel/metadata/ExcelColumnProperty.java
.../java/com/alibaba/excel/metadata/ExcelColumnProperty.java
+0
-1
src/main/java/com/alibaba/excel/metadata/ExcelHeadProperty.java
...in/java/com/alibaba/excel/metadata/ExcelHeadProperty.java
+0
-1
src/main/java/com/alibaba/excel/metadata/Font.java
src/main/java/com/alibaba/excel/metadata/Font.java
+0
-1
src/main/java/com/alibaba/excel/metadata/Table.java
src/main/java/com/alibaba/excel/metadata/Table.java
+0
-1
src/main/java/com/alibaba/excel/metadata/TableStyle.java
src/main/java/com/alibaba/excel/metadata/TableStyle.java
+0
-1
src/main/java/com/alibaba/excel/parameter/ExcelWriteParam.java
...ain/java/com/alibaba/excel/parameter/ExcelWriteParam.java
+0
-1
src/main/java/com/alibaba/excel/support/ExcelTypeEnum.java
src/main/java/com/alibaba/excel/support/ExcelTypeEnum.java
+20
-0
src/main/java/com/alibaba/excel/util/IndexValueConverter.java
...main/java/com/alibaba/excel/util/IndexValueConverter.java
+0
-1
src/main/java/com/alibaba/excel/util/POITempFile.java
src/main/java/com/alibaba/excel/util/POITempFile.java
+0
-1
src/main/java/com/alibaba/excel/util/PositionUtils.java
src/main/java/com/alibaba/excel/util/PositionUtils.java
+0
-1
src/main/java/com/alibaba/excel/util/TypeUtil.java
src/main/java/com/alibaba/excel/util/TypeUtil.java
+0
-1
src/main/java/com/alibaba/excel/write/ExcelBuilderImpl.java
src/main/java/com/alibaba/excel/write/ExcelBuilderImpl.java
+0
-1
src/main`java/com/alibaba/excel/annotation/FieldType.java
src/main`java/com/alibaba/excel/annotation/FieldType.java
+11
-0
src/main`java/com/alibaba/excel/constant/ExcelXmlConstants.java
...in`java/com/alibaba/excel/constant/ExcelXmlConstants.java
+17
-0
src/test/java/function/model/ExcelPropertyIndexModel.java
src/test/java/function/model/ExcelPropertyIndexModel.java
+0
-1
src/test/java/read/v03/XLS2003FunctionTest.java
src/test/java/read/v03/XLS2003FunctionTest.java
+2
-2
src/test/java/read/v07/Read2007Xlsx.java
src/test/java/read/v07/Read2007Xlsx.java
+2
-2
src/test/java/read/v07/listener/Excel2007WithJavaModelAnalysisListener.java
.../v07/listener/Excel2007WithJavaModelAnalysisListener.java
+0
-1
未找到文件。
src/main/java/com/alibaba/excel/ExcelReader.java
浏览文件 @
c598a704
...
...
@@ -31,11 +31,23 @@ public class ExcelReader {
* }AnalysisContext
* @param eventListener
*/
@Deprecated
public
ExcelReader
(
InputStream
in
,
ExcelTypeEnum
excelTypeEnum
,
Object
customContent
,
AnalysisEventListener
eventListener
)
{
this
(
in
,
excelTypeEnum
,
customContent
,
eventListener
,
true
);
}
/**
* @param in
* @param customContent {@link AnalysisEventListener#invoke(Object, AnalysisContext)
* }AnalysisContext
* @param eventListener
*/
public
ExcelReader
(
InputStream
in
,
Object
customContent
,
AnalysisEventListener
eventListener
)
{
this
(
in
,
customContent
,
eventListener
,
true
);
}
/**
* old 1.1.0
* @param param
...
...
@@ -54,12 +66,27 @@ public class ExcelReader {
* @param eventListener
* @param trim
*/
@Deprecated
public
ExcelReader
(
InputStream
in
,
ExcelTypeEnum
excelTypeEnum
,
Object
customContent
,
AnalysisEventListener
eventListener
,
boolean
trim
)
{
validateParam
(
in
,
excelTypeEnum
,
eventListener
);
analyser
.
init
(
in
,
excelTypeEnum
,
customContent
,
eventListener
,
trim
);
}
/**
* @param in
* @param customContent {@link AnalysisEventListener#invoke(Object, AnalysisContext)
* }AnalysisContext
* @param eventListener
* @param trim
*/
public
ExcelReader
(
InputStream
in
,
Object
customContent
,
AnalysisEventListener
eventListener
,
boolean
trim
)
{
ExcelTypeEnum
excelTypeEnum
=
ExcelTypeEnum
.
valueOf
(
in
);
validateParam
(
in
,
excelTypeEnum
,
eventListener
);
analyser
.
init
(
in
,
excelTypeEnum
,
customContent
,
eventListener
,
trim
);
}
/**
*/
public
void
read
()
{
...
...
src/main/java/com/alibaba/excel/analysis/v07/XlsxRowHandler.java
浏览文件 @
c598a704
...
...
@@ -18,7 +18,6 @@ import static com.alibaba.excel.constant.ExcelXmlConstants.*;
/**
* @author jipengfei
* @date 2017/08/23
*/
public
class
XlsxRowHandler
extends
DefaultHandler
{
...
...
src/main/java/com/alibaba/excel/analysis/v07/XlsxSaxAnalyser.java
浏览文件 @
c598a704
...
...
@@ -25,7 +25,6 @@ import java.util.List;
/**
* @author jipengfei
* @date 2017/08/27
*/
public
class
XlsxSaxAnalyser
extends
BaseSaxAnalyser
{
...
...
src/main/java/com/alibaba/excel/annotation/ExcelColumnNum.java
浏览文件 @
c598a704
...
...
@@ -7,7 +7,6 @@ import java.lang.annotation.*;
* Field column num at excel head
*
* @author jipengfei
* @date 2017/03/19
*/
@Target
(
ElementType
.
FIELD
)
@Retention
(
RetentionPolicy
.
RUNTIME
)
...
...
src/main/java/com/alibaba/excel/context/GenerateContextImpl.java
浏览文件 @
c598a704
...
...
@@ -3,6 +3,7 @@ package com.alibaba.excel.context;
import
com.alibaba.excel.metadata.*
;
import
com.alibaba.excel.metadata.CellRange
;
import
com.alibaba.excel.metadata.Table
;
import
com.alibaba.excel.metadata.TableStyle
;
import
com.alibaba.excel.support.ExcelTypeEnum
;
import
org.apache.poi.hssf.usermodel.HSSFWorkbook
;
import
org.apache.poi.poifs.filesystem.POIFSFileSystem
;
...
...
src/main/java/com/alibaba/excel/event/AnalysisEventRegisterCenter.java
浏览文件 @
c598a704
...
...
@@ -8,14 +8,14 @@ package com.alibaba.excel.event;
public
interface
AnalysisEventRegisterCenter
{
/**
* @param name
* @param listener
* @param name
监听名定义
* @param listener
具体实现
*/
void
appendLister
(
String
name
,
AnalysisEventListener
listener
);
/**
* @param event
* @param event
事件
*/
void
notifyListeners
(
OneRowAnalysisFinishEvent
event
);
...
...
src/main/java/com/alibaba/excel/event/OneRowAnalysisFinishEvent.java
浏览文件 @
c598a704
...
...
@@ -2,7 +2,6 @@ package com.alibaba.excel.event;
/**
* @author jipengfei
* @date 2017/07/21
*/
public
class
OneRowAnalysisFinishEvent
{
...
...
src/main/java/com/alibaba/excel/metadata/CellRange.java
浏览文件 @
c598a704
...
...
@@ -2,7 +2,6 @@ package com.alibaba.excel.metadata;
/**
* @author jipengfei
* @date 2017/06/02
*/
public
class
CellRange
{
...
...
src/main/java/com/alibaba/excel/metadata/ExcelColumnProperty.java
浏览文件 @
c598a704
...
...
@@ -6,7 +6,6 @@ import java.util.List;
/**
* @author jipengfei
* @date 2017/05/31
*/
public
class
ExcelColumnProperty
implements
Comparable
<
ExcelColumnProperty
>
{
...
...
src/main/java/com/alibaba/excel/metadata/ExcelHeadProperty.java
浏览文件 @
c598a704
...
...
@@ -9,7 +9,6 @@ import java.util.*;
/**
*
* @author jipengfei
* @date 2017/05/31
*/
public
class
ExcelHeadProperty
{
...
...
src/main/java/com/alibaba/excel/metadata/Font.java
浏览文件 @
c598a704
...
...
@@ -3,7 +3,6 @@ package com.alibaba.excel.metadata;
/**
*
* @author jipengfei
* @date 2017/05/24
*/
public
class
Font
{
...
...
src/main/java/com/alibaba/excel/metadata/Table.java
浏览文件 @
c598a704
...
...
@@ -4,7 +4,6 @@ import java.util.List;
/**
* @author jipengfei
* @date 2017/05/16
*/
public
class
Table
{
/**
...
...
src/main/java/com/alibaba/excel/metadata/TableStyle.java
浏览文件 @
c598a704
...
...
@@ -4,7 +4,6 @@ import org.apache.poi.ss.usermodel.IndexedColors;
/**
* @author jipengfei
* @date 2017/05/24
*/
public
class
TableStyle
{
...
...
src/main/java/com/alibaba/excel/parameter/ExcelWriteParam.java
浏览文件 @
c598a704
...
...
@@ -8,7 +8,6 @@ import java.io.OutputStream;
* {@link com.alibaba.excel.ExcelWriter}
*
* @author jipengfei
* @date 2017/05/15
*/
@Deprecated
public
class
ExcelWriteParam
{
...
...
src/main/java/com/alibaba/excel/support/ExcelTypeEnum.java
浏览文件 @
c598a704
package
com.alibaba.excel.support
;
import
org.apache.poi.poifs.filesystem.FileMagic
;
import
java.io.IOException
;
import
java.io.InputStream
;
/**
*
* @author jipengfei
...
...
@@ -21,4 +26,19 @@ public enum ExcelTypeEnum {
public
void
setValue
(
String
value
)
{
this
.
value
=
value
;
}
public
static
ExcelTypeEnum
valueOf
(
InputStream
inputStream
){
try
{
FileMagic
fileMagic
=
FileMagic
.
valueOf
(
inputStream
);
if
(
FileMagic
.
OLE2
.
equals
(
fileMagic
)){
return
XLS
;
}
if
(
FileMagic
.
OOXML
.
equals
(
fileMagic
)){
return
XLSX
;
}
throw
new
IllegalArgumentException
(
"excelTypeEnum can not null"
);
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
}
src/main/java/com/alibaba/excel/util/IndexValueConverter.java
浏览文件 @
c598a704
...
...
@@ -9,7 +9,6 @@ import java.util.Stack;
/**
* 去除空Cell
* @author jipengfei
* @date 2017/04/13
*/
public
class
IndexValueConverter
{
public
static
List
<
String
>
converter
(
List
<
IndexValue
>
i_list
)
{
...
...
src/main/java/com/alibaba/excel/util/POITempFile.java
浏览文件 @
c598a704
...
...
@@ -5,7 +5,6 @@ import java.io.File;
/**
*
* @author jipengfei
* @date 2017/06/22
*/
public
class
POITempFile
{
...
...
src/main/java/com/alibaba/excel/util/PositionUtils.java
浏览文件 @
c598a704
...
...
@@ -2,7 +2,6 @@ package com.alibaba.excel.util;
/**
* @author jipengfei
* @date 2017/08/27
*/
public
class
PositionUtils
{
...
...
src/main/java/com/alibaba/excel/util/TypeUtil.java
浏览文件 @
c598a704
...
...
@@ -14,7 +14,6 @@ import java.util.regex.Pattern;
/**
* @author jipengfei
* @date 2017/03/15
*/
public
class
TypeUtil
{
...
...
src/main/java/com/alibaba/excel/write/ExcelBuilderImpl.java
浏览文件 @
c598a704
...
...
@@ -21,7 +21,6 @@ import java.util.List;
/**
* @author jipengfei
* @date 2017/05/27
*/
public
class
ExcelBuilderImpl
implements
ExcelBuilder
{
...
...
src/main`java/com/alibaba/excel/annotation/FieldType.java
0 → 100644
浏览文件 @
c598a704
package
com.alibaba.excel.annotation
;
/**
*
* @author jipengfei
*/
public
enum
FieldType
{
STRING
,
INT
,
LONG
,
DATE
,
BOOLEAN
,
DOUBLE
,
EMPTY
;
}
src/main`java/com/alibaba/excel/constant/ExcelXmlConstants.java
0 → 100644
浏览文件 @
c598a704
package
com.alibaba.excel.constant
;
/**
* @author jipengfei
*/
public
class
ExcelXmlConstants
{
public
static
final
String
DIMENSION
=
"dimension"
;
public
static
final
String
DIMENSION_REF
=
"ref"
;
public
static
final
String
POSITION
=
"r"
;
public
static
final
String
ROW_TAG
=
"row"
;
public
static
final
String
CELL_TAG
=
"c"
;
public
static
final
String
CELL_VALUE_TAG
=
"v"
;
public
static
final
String
CELL_VALUE_TAG_1
=
"t"
;
}
src/test/java/function/model/ExcelPropertyIndexModel.java
浏览文件 @
c598a704
...
...
@@ -5,7 +5,6 @@ import com.alibaba.excel.metadata.BaseRowModel;
/**
* @author jipengfei
* @date 2017/05/31
*/
public
class
ExcelPropertyIndexModel
extends
BaseRowModel
{
...
...
src/test/java/read/v03/XLS2003FunctionTest.java
浏览文件 @
c598a704
...
...
@@ -19,12 +19,12 @@ public class XLS2003FunctionTest extends TestCase {
@Test
public
void
testExcel2003NoModel
()
{
InputStream
inputStream
=
getInputStream
(
"
loan1
.xls"
);
InputStream
inputStream
=
getInputStream
(
"
2003
.xls"
);
try
{
// 解析每行结果在listener中处理
ExcelListener
listener
=
new
ExcelListener
();
ExcelReader
excelReader
=
new
ExcelReader
(
inputStream
,
ExcelTypeEnum
.
XLS
,
null
,
listener
);
ExcelReader
excelReader
=
new
ExcelReader
(
inputStream
,
null
,
listener
);
excelReader
.
read
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
src/test/java/read/v07/Read2007Xlsx.java
浏览文件 @
c598a704
...
...
@@ -23,11 +23,11 @@ public class Read2007Xlsx {
//创建没有自定义模型,没有sheet的解析器,默认解析所有sheet解析结果以List<String>的方式通知监听者
@Test
public
void
noModel
()
{
InputStream
inputStream
=
getInputStream
(
"
需要分批关闭客户名单 2018.8.24
.xlsx"
);
InputStream
inputStream
=
getInputStream
(
"
2007
.xlsx"
);
final
List
<
List
<
String
>>
ll
=
new
ArrayList
<
List
<
String
>>();
try
{
ExcelReader
reader
=
new
ExcelReader
(
inputStream
,
ExcelTypeEnum
.
XLSX
,
null
,
ExcelReader
reader
=
new
ExcelReader
(
inputStream
,
null
,
new
AnalysisEventListener
<
List
<
String
>>()
{
@Override
public
void
invoke
(
List
<
String
>
object
,
AnalysisContext
context
)
{
...
...
src/test/java/read/v07/listener/Excel2007WithJavaModelAnalysisListener.java
浏览文件 @
c598a704
...
...
@@ -12,7 +12,6 @@ import java.util.List;
/**
* @author jipengfei
* @date 2017/08/27
*/
public
class
Excel2007WithJavaModelAnalysisListener
extends
AnalysisEventListener
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录