Class WorkbookKit

java.lang.Object
org.miaixz.bus.office.excel.xyz.WorkbookKit

public class WorkbookKit extends Object
Excel工作簿Workbook相关工具类
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static org.apache.poi.ss.usermodel.Workbook
    createBook(boolean isXlsx)
    创建新的空白Excel工作簿
    static org.apache.poi.ss.usermodel.Workbook
    createBook(File excelFile)
    创建或加载工作簿(读写模式)
    static org.apache.poi.ss.usermodel.Workbook
    createBook(File excelFile, boolean readOnly)
    创建或加载工作簿
    static org.apache.poi.ss.usermodel.Workbook
    createBook(File excelFile, String password)
    创建或加载工作簿(读写模式)
    static org.apache.poi.ss.usermodel.Workbook
    createBook(File excelFile, String password, boolean readOnly)
    创建或加载工作簿
    static org.apache.poi.ss.usermodel.Workbook
    创建或加载工作簿(只读模式)
    static org.apache.poi.ss.usermodel.Workbook
    createBook(InputStream in, String password)
    创建或加载工作簿(只读模式)
    static org.apache.poi.ss.usermodel.Workbook
    createBook(String excelFilePath)
    创建或加载工作簿(读写模式)
    static org.apache.poi.ss.usermodel.Workbook
    createBook(String excelFilePath, boolean readOnly)
    创建或加载工作簿
    static org.apache.poi.ss.usermodel.Workbook
    创建工作簿,用于Excel写出(读写模式)
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    创建空的SXSSFWorkbook,用于大批量数据写出
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    createSXSSFBook(int rowAccessWindowSize)
    创建空的SXSSFWorkbook,用于大批量数据写出
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    createSXSSFBook(int rowAccessWindowSize, boolean compressTmpFiles, boolean useSharedStringsTable)
    创建空的SXSSFWorkbook,用于大批量数据写出
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    createSXSSFBook(File excelFile)
    创建或加载SXSSFWorkbook工作簿(读写模式)
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    createSXSSFBook(File excelFile, boolean readOnly)
    创建或加载SXSSFWorkbook工作簿
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    createSXSSFBook(File excelFile, String password)
    创建或加载SXSSFWorkbook工作簿(读写模式)
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    createSXSSFBook(File excelFile, String password, boolean readOnly)
    创建或加载SXSSFWorkbook工作簿
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    创建或加载SXSSFWorkbook工作簿(只读模式)
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    创建或加载SXSSFWorkbook工作簿(只读模式)
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    createSXSSFBook(String excelFilePath)
    创建或加载SXSSFWorkbook工作簿(读写模式)
    static org.apache.poi.xssf.streaming.SXSSFWorkbook
    createSXSSFBook(String excelFilePath, boolean readOnly)
    创建或加载SXSSFWorkbook工作簿
    static void
    writeBook(org.apache.poi.ss.usermodel.Workbook book, OutputStream out)
    将Excel Workbook刷出到输出流,不关闭流

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • WorkbookKit

      public WorkbookKit()
  • Method Details

    • createBook

      public static org.apache.poi.ss.usermodel.Workbook createBook(String excelFilePath)
      创建或加载工作簿(读写模式)
      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

      public static org.apache.poi.ss.usermodel.Workbook createBook(File excelFile)
      创建或加载工作簿(读写模式)
      Parameters:
      excelFile - Excel文件
      Returns:
      Workbook
    • createBook

      public static org.apache.poi.ss.usermodel.Workbook createBook(File excelFile, boolean readOnly)
      创建或加载工作簿
      Parameters:
      excelFile - Excel文件
      readOnly - 是否只读模式打开,true:是(不可编辑),false:否(可编辑)
      Returns:
      Workbook
    • createBookForWriter

      public static org.apache.poi.ss.usermodel.Workbook createBookForWriter(File excelFile)
      创建工作簿,用于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(File excelFile, String password)
      创建或加载工作簿(读写模式)
      Parameters:
      excelFile - Excel文件
      password - Excel工作簿密码,如果无密码传null
      Returns:
      Workbook
    • createBook

      public static org.apache.poi.ss.usermodel.Workbook createBook(File excelFile, String password, boolean readOnly)
      创建或加载工作簿
      Parameters:
      excelFile - Excel文件
      password - Excel工作簿密码,如果无密码传null
      readOnly - 是否只读模式打开,true:是(不可编辑),false:否(可编辑)
      Returns:
      Workbook
    • createBook

      public static org.apache.poi.ss.usermodel.Workbook createBook(InputStream in)
      创建或加载工作簿(只读模式)
      Parameters:
      in - Excel输入流
      Returns:
      Workbook
    • createBook

      public static org.apache.poi.ss.usermodel.Workbook createBook(InputStream in, String password)
      创建或加载工作簿(只读模式)
      Parameters:
      in - Excel输入流,使用完毕自动关闭流
      password - 密码
      Returns:
      Workbook
    • createBook

      public static org.apache.poi.ss.usermodel.Workbook createBook(boolean isXlsx)
      创建新的空白Excel工作簿
      Parameters:
      isXlsx - 是否为xlsx格式的Excel
      Returns:
      Workbook
    • createSXSSFBook

      public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(String excelFilePath)
      创建或加载SXSSFWorkbook工作簿(读写模式)
      Parameters:
      excelFilePath - Excel文件路径,绝对路径或相对于ClassPath路径
      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)
      创建或加载SXSSFWorkbook工作簿(读写模式)
      Parameters:
      excelFile - Excel文件
      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工作簿密码,如果无密码传null
      readOnly - 是否只读模式打开,true:是(不可编辑),false:否(可编辑)
      Returns:
      SXSSFWorkbook
    • createSXSSFBook

      public static org.apache.poi.xssf.streaming.SXSSFWorkbook createSXSSFBook(InputStream in)
      创建或加载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 - 在内存中的行数,-1表示不限制,此时需要手动刷出
      Returns:
      SXSSFWorkbook
    • 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.miaixz.bus.core.lang.exception.InternalException
      将Excel Workbook刷出到输出流,不关闭流
      Parameters:
      book - Workbook
      out - 输出流
      Throws:
      org.miaixz.bus.core.lang.exception.InternalException - IO异常