Package org.aoju.bus.office.excel
Class WorksKit
java.lang.Object
org.aoju.bus.office.excel.WorksKit
Excel工作簿
Workbook相关工具类- Since:
- Java 17+
- Author:
- Kimi Liu
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic org.apache.poi.ss.usermodel.WorkbookcreateBook(boolean isXlsx) 创建新的空白Excel工作簿static org.apache.poi.ss.usermodel.WorkbookcreateBook(File excelFile) 创建或加载工作簿static org.apache.poi.ss.usermodel.WorkbookcreateBook(File excelFile, boolean readOnly) 创建或加载工作簿static org.apache.poi.ss.usermodel.WorkbookcreateBook(File excelFile, String password) 创建或加载工作簿,只读模式static org.apache.poi.ss.usermodel.WorkbookcreateBook(File excelFile, String password, boolean readOnly) 创建或加载工作簿static org.apache.poi.ss.usermodel.Workbook创建或加载工作簿static org.apache.poi.ss.usermodel.WorkbookcreateBook(InputStream in, String password) 创建或加载工作簿static org.apache.poi.ss.usermodel.WorkbookcreateBook(String excelFilePath) 创建或加载工作簿static org.apache.poi.ss.usermodel.WorkbookcreateBook(String excelFilePath, boolean readOnly) 创建或加载工作簿static org.apache.poi.ss.usermodel.WorkbookcreateBookForWriter(File excelFile) 创建工作簿,用于Excel写出static org.apache.poi.xssf.streaming.SXSSFWorkbook创建SXSSFWorkbook,用于大批量数据写出static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(int rowAccessWindowSize) 创建SXSSFWorkbook,用于大批量数据写出static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(int rowAccessWindowSize, boolean compressTmpFiles, boolean useSharedStringsTable) 创建空的SXSSFWorkbook,用于大批量数据写出static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(File excelFile) 创建或加载SXSSFWorkbook工作簿static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(File excelFile, boolean readOnly) 创建或加载SXSSFWorkbook工作簿static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(File excelFile, String password) 创建或加载SXSSFWorkbook工作簿,只读模式static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(File excelFile, String password, boolean readOnly) 创建或加载SXSSFWorkbook工作簿static org.apache.poi.xssf.streaming.SXSSFWorkbook创建或加载SXSSFWorkbook工作簿static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(InputStream in, String password) 创建或加载SXSSFWorkbook工作簿static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(String excelFilePath) 创建或加载SXSSFWorkbook工作簿static org.apache.poi.xssf.streaming.SXSSFWorkbookcreateSXSSFBook(String excelFilePath, boolean readOnly) 创建或加载SXSSFWorkbook工作簿static org.apache.poi.ss.usermodel.SheetgetOrCreateSheet(org.apache.poi.ss.usermodel.Workbook book, int sheetIndex) 获取或者创建sheet表 自定义需要读取或写出的Sheet,如果给定的sheet不存在,创建之(命名为默认) 在读取中,此方法用于切换读取的sheet,在写出时,此方法用于新建或者切换sheetstatic org.apache.poi.ss.usermodel.SheetgetOrCreateSheet(org.apache.poi.ss.usermodel.Workbook book, String sheetName) 获取或者创建sheet表 如果sheet表在Workbook中已经存在,则获取之,否则创建之static booleanisEmpty(org.apache.poi.ss.usermodel.Sheet sheet) sheet是否为空static voidwriteBook(org.apache.poi.ss.usermodel.Workbook book, OutputStream out) 将Excel Workbook刷出到输出流,不关闭流
-
Constructor Details
-
WorksKit
public WorksKit()
-
-
Method Details
-
createBook
创建或加载工作簿- Parameters:
excelFilePath- Excel文件路径,绝对路径或相对于ClassPath路径- Returns:
Workbook
-
createBook
public static org.apache.poi.ss.usermodel.Workbook createBook(String excelFilePath, boolean readOnly) 创建或加载工作簿- Parameters:
excelFilePath- Excel文件路径,绝对路径或相对于ClassPath路径readOnly- 是否只读模式打开,true:是(不可编辑),false:否(可编辑)- Returns:
Workbook
-
createBook
创建或加载工作簿- Parameters:
excelFile- Excel文件- Returns:
Workbook
-
createBook
创建或加载工作簿- Parameters:
excelFile- Excel文件readOnly- 是否只读模式打开,true:是(不可编辑),false:否(可编辑)- Returns:
Workbook
-
createBookForWriter
创建工作簿,用于Excel写出1. excelFile为null时直接返回一个空的工作簿,默认xlsx格式 2. 文件已存在则通过流的方式读取到这个工作簿 3. 文件不存在则检查传入文件路径是否以xlsx为扩展名,是则创建xlsx工作簿,否则创建xls工作簿
- Parameters:
excelFile- Excel文件- Returns:
Workbook
-
createBook
public static org.apache.poi.ss.usermodel.Workbook createBook(boolean isXlsx) 创建新的空白Excel工作簿- Parameters:
isXlsx- 是否为xlsx格式的Excel- Returns:
Workbook
-
createBook
创建或加载工作簿- Parameters:
in- Excel输入流- Returns:
Workbook
-
createBook
创建或加载工作簿,只读模式- Parameters:
excelFile- Excel文件password- Excel工作簿密码,如果无密码传null- Returns:
Workbook
-
createBook
创建或加载工作簿- Parameters:
in- Excel输入流,使用完毕自动关闭流password- 密码- Returns:
Workbook
-
createBook
public static org.apache.poi.ss.usermodel.Workbook createBook(File excelFile, String password, boolean readOnly) 创建或加载工作簿- Parameters:
excelFile- Excel文件password- Excel工作簿密码,如果无密码传nullreadOnly- 是否只读模式打开,true:是(不可编辑),false:否(可编辑)- Returns:
Workbook
-
createSXSSFBook
创建或加载SXSSFWorkbook工作簿- Parameters:
excelFilePath- Excel文件路径,绝对路径或相对于ClassPath路径- Returns:
SXSSFWorkbook
-
createSXSSFBook
创建或加载SXSSFWorkbook工作簿- Parameters:
excelFile- Excel文件- Returns:
SXSSFWorkbook
-
createSXSSFBook
public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(String excelFilePath, boolean readOnly) 创建或加载SXSSFWorkbook工作簿- Parameters:
excelFilePath- Excel文件路径,绝对路径或相对于ClassPath路径readOnly- 是否只读模式打开,true:是(不可编辑),false:否(可编辑)- Returns:
SXSSFWorkbook
-
createSXSSFBook
public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(File excelFile, boolean readOnly) 创建或加载SXSSFWorkbook工作簿- Parameters:
excelFile- Excel文件readOnly- 是否只读模式打开,true:是(不可编辑),false:否(可编辑)- Returns:
SXSSFWorkbook
-
createSXSSFBook
public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(File excelFile, String password) 创建或加载SXSSFWorkbook工作簿,只读模式- Parameters:
excelFile- Excel文件password- Excel工作簿密码,如果无密码传null- Returns:
SXSSFWorkbook
-
createSXSSFBook
public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(File excelFile, String password, boolean readOnly) 创建或加载SXSSFWorkbook工作簿- Parameters:
excelFile- Excel文件password- Excel工作簿密码,如果无密码传nullreadOnly- 是否只读模式打开,true:是(不可编辑),false:否(可编辑)- Returns:
SXSSFWorkbook
-
createSXSSFBook
创建或加载SXSSFWorkbook工作簿- Parameters:
in- Excel输入流- Returns:
SXSSFWorkbook
-
createSXSSFBook
public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(InputStream in, String password) 创建或加载SXSSFWorkbook工作簿- Parameters:
in- Excel输入流password- 密码- Returns:
SXSSFWorkbook
-
createSXSSFBook
public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook()创建SXSSFWorkbook,用于大批量数据写出- Returns:
SXSSFWorkbook
-
createSXSSFBook
public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(int rowAccessWindowSize) 创建SXSSFWorkbook,用于大批量数据写出- Parameters:
rowAccessWindowSize- 在内存中的行数- Returns:
Workbook
-
createSXSSFBook
public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(int rowAccessWindowSize, boolean compressTmpFiles, boolean useSharedStringsTable) 创建空的SXSSFWorkbook,用于大批量数据写出- Parameters:
rowAccessWindowSize- 在内存中的行数,-1表示不限制,此时需要手动刷出compressTmpFiles- 是否使用Gzip压缩临时文件useSharedStringsTable- 是否使用共享字符串表,一般大量重复字符串时开启可节省内存- Returns:
SXSSFWorkbook
-
writeBook
public static void writeBook(org.apache.poi.ss.usermodel.Workbook book, OutputStream out) throws org.aoju.bus.core.exception.InternalException 将Excel Workbook刷出到输出流,不关闭流- Parameters:
book-Workbookout- 输出流- Throws:
org.aoju.bus.core.exception.InternalException- IO异常
-
getOrCreateSheet
public static org.apache.poi.ss.usermodel.Sheet getOrCreateSheet(org.apache.poi.ss.usermodel.Workbook book, String sheetName) 获取或者创建sheet表 如果sheet表在Workbook中已经存在,则获取之,否则创建之- Parameters:
book- 工作簿WorkbooksheetName- 工作表名- Returns:
- 工作表
Sheet
-
getOrCreateSheet
public static org.apache.poi.ss.usermodel.Sheet getOrCreateSheet(org.apache.poi.ss.usermodel.Workbook book, int sheetIndex) 获取或者创建sheet表 自定义需要读取或写出的Sheet,如果给定的sheet不存在,创建之(命名为默认) 在读取中,此方法用于切换读取的sheet,在写出时,此方法用于新建或者切换sheet- Parameters:
book- 工作簿WorkbooksheetIndex- 工作表序号- Returns:
- 工作表
Sheet
-
isEmpty
public static boolean isEmpty(org.apache.poi.ss.usermodel.Sheet sheet) sheet是否为空- Parameters:
sheet-Sheet- Returns:
- sheet是否为空
-