public class ExcelWriter extends Object implements Closeable
| 构造器和说明 |
|---|
ExcelWriter()
构造,默认生成xls格式的Excel文件
此构造不传入写出的Excel文件路径,只能调用 flush(OutputStream)方法写出到流若写出到文件,还需调用 setDestFile(File)方法自定义写出的文件,然后调用flush()方法写出到文件 |
ExcelWriter(boolean isXlsx)
构造
此构造不传入写出的Excel文件路径,只能调用 flush(OutputStream)方法写出到流若写出到文件,还需调用 setDestFile(File)方法自定义写出的文件,然后调用flush()方法写出到文件 |
ExcelWriter(File destFile)
构造,默认写出到第一个sheet,第一个sheet名为sheet1
|
ExcelWriter(File destFile,
String sheetName)
构造
|
ExcelWriter(String destFilePath)
构造,默认写出到第一个sheet,第一个sheet名为sheet1
|
ExcelWriter(String destFilePath,
String sheetName)
构造
|
ExcelWriter(org.apache.poi.ss.usermodel.Workbook workbook,
String sheetName)
构造
此构造不传入写出的Excel文件路径,只能调用 flush(OutputStream)方法写出到流若写出到文件,还需调用 setDestFile(File)方法自定义写出的文件,然后调用flush()方法写出到文件 |
| 限定符和类型 | 方法和说明 |
|---|---|
ExcelWriter |
autoSizeColumn(int columnIndex,
boolean useMergedCells)
设置某列为自动宽度
|
void |
close()
关闭工作簿
如果用户设定了目标文件,先写出目标文件后给关闭工作簿 |
ExcelWriter |
flush()
将Excel Workbook刷出到预定义的文件
如果用户未自定义输出的文件,将抛出 NullPointerException |
ExcelWriter |
flush(OutputStream out)
将Excel Workbook刷出到输出流
|
org.apache.poi.ss.usermodel.CellStyle |
getCellStyle()
获取单元格样式,获取样式后可自定义样式
|
int |
getCurrentRow()
获得当前行
|
org.apache.poi.ss.usermodel.CellStyle |
getHeadCellStyle()
获取头部样式,获取样式后可自定义样式
|
org.apache.poi.ss.usermodel.Sheet |
getSheet()
获取当前Sheet
|
org.apache.poi.ss.usermodel.Workbook |
getWorkbook()
获取Workbook
|
ExcelWriter |
merge(int lastColumn)
合并当前行的单元格
样式为默认标题样式,可使用 getHeadCellStyle()方法调用后自定义默认样式 |
ExcelWriter |
merge(int lastColumn,
Object content)
|
ExcelWriter |
passCurrentRow()
跳过当前行
|
ExcelWriter |
passRows(int rows)
跳过指定行数
|
ExcelWriter |
resetRow()
重置当前行为0
|
ExcelWriter |
setCurrentRow(int rowIndex)
设置当前所在行
|
ExcelWriter |
setDestFile(File destFile)
设置写出的目标文件
|
ExcelWriter |
setHeaderAlias(Map<String,String> headerAlias)
设置标题别名,key为Map中的key,value为别名
|
ExcelWriter |
write(Iterable<?> data)
写出数据,本方法只是将数据写入Workbook中的Sheet,并不写出到文件
写出的起始行为当前行号,可使用 getCurrentRow()方法调用,根据写出的的行数,当前行号自动增加样式为默认样式,可使用 getCellStyle()方法调用后自定义默认样式data中元素支持的类型有: 1. |
<T> ExcelWriter |
write(Iterable<T> data,
Comparator<String> comparator)
写出数据,本方法只是将数据写入Workbook中的Sheet,并不写出到文件
写出的起始行为当前行号,可使用 getCurrentRow()方法调用,根据写出的的行数,当前行号自动增加样式为默认样式,可使用 getCellStyle()方法调用后自定义默认样式data中元素支持的类型有: 1. |
ExcelWriter |
writeHeadRow(Iterable<?> rowData)
写出一行标题数据
本方法只是将数据写入Workbook中的Sheet,并不写出到文件 写出的起始行为当前行号,可使用 getCurrentRow()方法调用,根据写出的的行数,当前行号自动+1样式为默认标题样式,可使用 getHeadCellStyle()方法调用后自定义默认样式 |
ExcelWriter |
writeRow(Iterable<?> rowData)
写出一行数据
本方法只是将数据写入Workbook中的Sheet,并不写出到文件 写出的起始行为当前行号,可使用 getCurrentRow()方法调用,根据写出的的行数,当前行号自动+1样式为默认样式,可使用 getCellStyle()方法调用后自定义默认样式 |
ExcelWriter |
writeRows(Map<?,?> rowMap,
boolean isWriteKeys)
将一个Map写入到Excel,isWriteKeys为true写出两行,Map的keys做为一行,values做为第二行,否则只写出一行values
|
public ExcelWriter()
flush(OutputStream)方法写出到流setDestFile(File)方法自定义写出的文件,然后调用flush()方法写出到文件public ExcelWriter(boolean isXlsx)
flush(OutputStream)方法写出到流setDestFile(File)方法自定义写出的文件,然后调用flush()方法写出到文件isXlsx - 是否为xlsx格式public ExcelWriter(String destFilePath)
destFilePath - 目标文件路径,可以不存在public ExcelWriter(String destFilePath, String sheetName)
destFilePath - 目标文件路径,可以不存在sheetName - sheet名,第一个sheet名并写出到此sheet,例如sheet1public ExcelWriter(File destFile)
destFile - 目标文件,可以不存在public ExcelWriter(File destFile, String sheetName)
destFile - 目标文件,可以不存在sheetName - sheet名,做为第一个sheet名并写出到此sheet,例如sheet1public ExcelWriter(org.apache.poi.ss.usermodel.Workbook workbook,
String sheetName)
flush(OutputStream)方法写出到流setDestFile(File)方法自定义写出的文件,然后调用flush()方法写出到文件workbook - WorkbooksheetName - sheet名,做为第一个sheet名并写出到此sheet,例如sheet1public org.apache.poi.ss.usermodel.Workbook getWorkbook()
public org.apache.poi.ss.usermodel.Sheet getSheet()
Sheetpublic ExcelWriter autoSizeColumn(int columnIndex, boolean useMergedCells)
columnIndex - 第几列,从0计数useMergedCells - 是否适用于合并单元格public org.apache.poi.ss.usermodel.CellStyle getHeadCellStyle()
public org.apache.poi.ss.usermodel.CellStyle getCellStyle()
public int getCurrentRow()
public ExcelWriter setCurrentRow(int rowIndex)
rowIndex - 行号public ExcelWriter passCurrentRow()
public ExcelWriter passRows(int rows)
rows - 跳过的行数public ExcelWriter resetRow()
public ExcelWriter setDestFile(File destFile)
destFile - 目标文件public ExcelWriter setHeaderAlias(Map<String,String> headerAlias)
headerAlias - 标题别名public ExcelWriter merge(int lastColumn)
getHeadCellStyle()方法调用后自定义默认样式lastColumn - 合并到的最后一个列号public ExcelWriter merge(int lastColumn, Object content)
lastColumn - 合并到的最后一个列号content - 合并单元格后的内容public ExcelWriter write(Iterable<?> data)
getCurrentRow()方法调用,根据写出的的行数,当前行号自动增加getCellStyle()方法调用后自定义默认样式
1. Iterable,既元素为一个集合,元素被当作一行,data表示多行
2. Map,既元素为一个Map,第一个Map的keys作为首行,剩下的行为Map的values,data表示多行
3. Bean,既元素为一个Bean,第一个Bean的字段名列表会作为首行,剩下的行为Bean的字段值列表,data表示多行
4. 无法识别,不输出
data - 数据public <T> ExcelWriter write(Iterable<T> data, Comparator<String> comparator)
getCurrentRow()方法调用,根据写出的的行数,当前行号自动增加getCellStyle()方法调用后自定义默认样式
1. Map,既元素为一个Map,第一个Map的keys作为首行,剩下的行为Map的values,data表示多行
2. Bean,既元素为一个Bean,第一个Bean的字段名列表会作为首行,剩下的行为Bean的字段值列表,data表示多行
data - 数据comparator - 比较器public ExcelWriter writeHeadRow(Iterable<?> rowData)
getCurrentRow()方法调用,根据写出的的行数,当前行号自动+1getHeadCellStyle()方法调用后自定义默认样式rowData - 一行的数据public ExcelWriter writeRow(Iterable<?> rowData)
getCurrentRow()方法调用,根据写出的的行数,当前行号自动+1getCellStyle()方法调用后自定义默认样式rowData - 一行的数据public ExcelWriter writeRows(Map<?,?> rowMap, boolean isWriteKeys)
rowMap - 写出的MapisWriteKeys - 为true写出两行,Map的keys做为一行,values做为第二行,否则只写出一行valuespublic ExcelWriter flush() throws IORuntimeException
NullPointerExceptionIORuntimeException - IO异常public ExcelWriter flush(OutputStream out) throws IORuntimeException
out - 输出流IORuntimeException - IO异常public void close()
close 在接口中 Closeableclose 在接口中 AutoCloseableCopyright © 2018. All rights reserved.