HSSF提供读写Microsoft Excel XLS格式档案的功能。
XSSF提供读写Microsoft Excel OOXML XLSX格式档案的功能。

HWPF提供读写Microsoft Word DOC格式档案的功能。
HSLF提供读写Microsoft PowerPoint格式档案的功能。
HDGF提供读Microsoft Visio格式档案的功能。
HPBF提供读Microsoft Publisher格式档案的功能。
HSMF提供读Microsoft Outlook格式档案的功能。

Maven 依赖

  1. <dependency>
  2. <groupId>org.apache.poi</groupId>
  3. <artifactId>poi-ooxml</artifactId>
  4. <version>3.17</version>
  5. </dependency>

Excel 读写

读取

  1. public static List<String> parser(byte[] data) throws IOException {
  2. List<String> list = new ArrayList<>();
  3. Workbook wb = null;
  4. try {
  5. InputStream in = new ByteArrayInputStream(data);
  6. wb = new XSSFWorkbook(in);
  7. } catch (Exception e) {
  8. InputStream in = new ByteArrayInputStream(data);
  9. wb = new HSSFWorkbook(in);
  10. }
  11. int count = wb.getNumberOfSheets();
  12. for (int i = 0; i < count; i++) {
  13. Sheet sheet = wb.getSheetAt(0);
  14. int rows = sheet.getLastRowNum();
  15. for (int j = 1; j < rows; j++) {
  16. Row row = sheet.getRow(j);
  17. if (row != null) {
  18. Cell cell = row.getCell(0);
  19. if (cell != null) {
  20. String value = cell.getStringCellValue();
  21. list.add(value);
  22. }
  23. }
  24. }
  25. }
  26. wb.close();
  27. return list;
  28. }

写入

单元格

字体

  1. def getH1(workbook: HSSFWorkbook) = {
  2. val h1: HSSFCellStyle = workbook.createCellStyle()
  3. val h1Font = workbook.createFont
  4. h1Font.setFontName("黑体")
  5. h1Font.setFontHeightInPoints(18.toShort) //设置字体大小
  6. h1.setFont(h1Font)
  7. h1
  8. }

文档更新时间: 2018-12-26 11:53