Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
金手指1668
easyexcel
提交
2c45fa0b
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,发现更多精彩内容 >>
提交
2c45fa0b
编写于
5月 22, 2020
作者:
庄家钜
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
写入`sheet`不设置`index`和`name`默认不为0的问题
上级
39ed3a67
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
109 addition
and
1 deletion
+109
-1
src/main/java/com/alibaba/excel/context/WriteContextImpl.java
...main/java/com/alibaba/excel/context/WriteContextImpl.java
+1
-1
src/test/java/com/alibaba/easyexcel/test/temp/WriteLargeTest.java
.../java/com/alibaba/easyexcel/test/temp/WriteLargeTest.java
+108
-0
未找到文件。
src/main/java/com/alibaba/excel/context/WriteContextImpl.java
浏览文件 @
2c45fa0b
...
...
@@ -129,7 +129,7 @@ public class WriteContextImpl implements WriteContext {
sheetNo
=
0
;
}
if
(
sheetNo
!=
null
)
{
writeSheetHolder
=
writeWorkbookHolder
.
getHasBeenInitializedSheetIndexMap
().
get
(
writeSheet
.
getSheetNo
()
);
writeSheetHolder
=
writeWorkbookHolder
.
getHasBeenInitializedSheetIndexMap
().
get
(
sheetNo
);
}
if
(
writeSheetHolder
==
null
&&
!
StringUtils
.
isEmpty
(
writeSheet
.
getSheetName
()))
{
writeSheetHolder
=
writeWorkbookHolder
.
getHasBeenInitializedSheetNameMap
().
get
(
writeSheet
.
getSheetName
());
...
...
src/test/java/com/alibaba/easyexcel/test/temp/WriteLargeTest.java
0 → 100644
浏览文件 @
2c45fa0b
package
com.alibaba.easyexcel.test.temp
;
import
java.util.ArrayList
;
import
java.util.List
;
import
org.apache.poi.ss.usermodel.BorderStyle
;
import
org.apache.poi.ss.usermodel.FillPatternType
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
import
org.apache.poi.ss.usermodel.IndexedColors
;
import
org.apache.poi.ss.usermodel.VerticalAlignment
;
import
org.junit.Ignore
;
import
org.junit.Test
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
com.alibaba.easyexcel.test.core.large.LargeData
;
import
com.alibaba.easyexcel.test.demo.write.DemoData
;
import
com.alibaba.easyexcel.test.util.TestFileUtil
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.ExcelWriter
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.alibaba.excel.write.metadata.style.WriteCellStyle
;
import
com.alibaba.excel.write.metadata.style.WriteFont
;
import
com.alibaba.excel.write.style.HorizontalCellStyleStrategy
;
/**
* 临时测试
*
* @author Jiaju Zhuang
**/
@Ignore
public
class
WriteLargeTest
{
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
WriteLargeTest
.
class
);
private
int
i
=
0
;
@Test
public
void
test
()
throws
Exception
{
// 方法2 如果写到不同的sheet 同一个对象
String
fileName
=
TestFileUtil
.
getPath
()
+
"large"
+
System
.
currentTimeMillis
()
+
".xlsx"
;
// 头的策略
WriteCellStyle
headWriteCellStyle
=
new
WriteCellStyle
();
// 背景设置为红色
headWriteCellStyle
.
setFillForegroundColor
(
IndexedColors
.
RED
.
getIndex
());
WriteFont
headWriteFont
=
new
WriteFont
();
headWriteFont
.
setFontHeightInPoints
((
short
)
20
);
headWriteCellStyle
.
setWriteFont
(
headWriteFont
);
// 内容的策略
WriteCellStyle
contentWriteCellStyle
=
new
WriteCellStyle
();
// 这里需要指定 FillPatternType 为FillPatternType.SOLID_FOREGROUND 不然无法显示背景颜色.头默认了 FillPatternType所以可以不指定
contentWriteCellStyle
.
setFillPatternType
(
FillPatternType
.
SOLID_FOREGROUND
);
// 背景绿色
contentWriteCellStyle
.
setFillForegroundColor
(
IndexedColors
.
GREEN
.
getIndex
());
WriteFont
contentWriteFont
=
new
WriteFont
();
// 字体大小
contentWriteFont
.
setFontHeightInPoints
((
short
)
20
);
contentWriteCellStyle
.
setWriteFont
(
contentWriteFont
);
// 这个策略是 头是头的样式 内容是内容的样式 其他的策略可以自己实现
HorizontalCellStyleStrategy
horizontalCellStyleStrategy
=
new
HorizontalCellStyleStrategy
(
headWriteCellStyle
,
contentWriteCellStyle
);
ExcelWriter
excelWriter
=
EasyExcel
.
write
(
fileName
,
LargeData
.
class
).
registerWriteHandler
(
horizontalCellStyleStrategy
).
build
();
WriteSheet
writeSheet
=
EasyExcel
.
writerSheet
().
build
();
for
(
int
j
=
0
;
j
<
100
;
j
++)
{
excelWriter
.
write
(
data
(),
writeSheet
);
LOGGER
.
info
(
"{} fill success."
,
j
);
}
excelWriter
.
finish
();
}
private
List
<
LargeData
>
data
()
{
List
<
LargeData
>
list
=
new
ArrayList
<
LargeData
>();
int
size
=
i
+
5000
;
for
(;
i
<
size
;
i
++)
{
LargeData
largeData
=
new
LargeData
();
list
.
add
(
largeData
);
largeData
.
setStr1
(
"str1-"
+
i
);
largeData
.
setStr2
(
"str2-"
+
i
);
largeData
.
setStr3
(
"str3-"
+
i
);
largeData
.
setStr4
(
"str4-"
+
i
);
largeData
.
setStr5
(
"str5-"
+
i
);
largeData
.
setStr6
(
"str6-"
+
i
);
largeData
.
setStr7
(
"str7-"
+
i
);
largeData
.
setStr8
(
"str8-"
+
i
);
largeData
.
setStr9
(
"str9-"
+
i
);
largeData
.
setStr10
(
"str10-"
+
i
);
largeData
.
setStr11
(
"str11-"
+
i
);
largeData
.
setStr12
(
"str12-"
+
i
);
largeData
.
setStr13
(
"str13-"
+
i
);
largeData
.
setStr14
(
"str14-"
+
i
);
largeData
.
setStr15
(
"str15-"
+
i
);
largeData
.
setStr16
(
"str16-"
+
i
);
largeData
.
setStr17
(
"str17-"
+
i
);
largeData
.
setStr18
(
"str18-"
+
i
);
largeData
.
setStr19
(
"str19-"
+
i
);
largeData
.
setStr20
(
"str20-"
+
i
);
largeData
.
setStr21
(
"str21-"
+
i
);
largeData
.
setStr22
(
"str22-"
+
i
);
largeData
.
setStr23
(
"str23-"
+
i
);
largeData
.
setStr24
(
"str24-"
+
i
);
largeData
.
setStr25
(
"str25-"
+
i
);
}
return
list
;
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录