Java操作Excel之POI简单例子

Posted 染红の街道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java操作Excel之POI简单例子相关的知识,希望对你有一定的参考价值。

 21 /**
 22  * 利用POI操作Excel表单
 23  * 
 24  * 需要jar包:
 25  *     HSSF针对03及以前版本,即.xls后缀
 26  *         |---poi-3.16.jar
 27  *     XSSF针对07及以后版本,即xlsx后缀
 28  *         |---poi-3.16.jar
 29  *         |---poi-ooxml.3.16.jar
 30  *         |---poi-ooxml-schemas-3.16.jar
 31  *         |---xmlbeans-2.6.0.jar
 32  *         |---commons-collections4-4.1.jar
 33  * 
 34  * 工作簿:Workbook
 35  * 工作表:Sheet
 36  * 行:    Row
 37  * 表格:Cell
 38  */
 39 public class Demo {
 40 
 41     /**
 42      * 读取Excel表格
 43      * @throws IOEception 
 44      * @throws InvalidFormatException 
 45      * @throws EncryptedDocumentException 
 46      */
 47     @Test
 48     public void readExcel() throws EncryptedDocumentException, InvalidFormatException, IOException {
 49         //工作簿
 50         Workbook workbook = WorkbookFactory.create(new File("src/userExce1.xls"));
 51         //工作表
 52         Sheet sheet = workbook.getSheetAt(0);
 53         //
 54         Row row = sheet.getRow(1);
 55         //
 56         Cell cell = row.getCell(0);
 57 
 58         System.out.println("表格值为:" + cell.getStringCellValue());
 59     }
 60 
 61     /**
 62      * 创建Excel表格
 63      * @throws IOException 
 64      * @throws InvalidFormatException 
 65      * @throws EncryptedDocumentException 
 66      */
 67     @Test
 68     public void writeExcel() throws EncryptedDocumentException, InvalidFormatException, IOException {
 69         //工作簿
 70         Workbook workbook = new XSSFWorkbook();
 71         //工作表
 72         Sheet sheet = workbook.createSheet("我的第一个sheet");
 73         //
 74         Row row = sheet.createRow(0);
 75         //
 76         Cell cell = row.createCell(3);
 77         
 78         cell.setCellValue("哈哈表格插入一个内容");
 79         
 80         workbook.write(new FileOutputStream("c:/test.xlsx"));
 81     }
 82 
 83     /**
 84      * 读取Excel表格,修改样式和内容并保存
 85      * @throws IOEception 
 86      * @throws InvalidFormatException 
 87      * @throws EncryptedDocumentException 
 88      */
 89     @Test
 90     public void readAndModifyExcel() throws EncryptedDocumentException, InvalidFormatException, IOException {
 91 
 92         String filename = "src/userExcel.xlsx";
 93         File file = new File(filename);
 94         
 95         System.out.println(file.getAbsolutePath());
 96         
 97         Workbook workbook = WorkbookFactory.create(file);
 98         Sheet sheet = workbook.getSheetAt(0);
 99         
100         //合并单元格,在工作表添加合并单元格
101         CellRangeAddress headSpan = new CellRangeAddress(2, 2, 0, 4);
102         sheet.addMergedRegion(headSpan);
103         
104         //在合并的位置设置表头文字
105         Row row = sheet.createRow(0);
106         Cell cell = row.createCell(0);
107         cell.setCellValue("这是表头");
108 
109         //写入文本中
110         String savedName = filename.matches("\\S+\\.xls") ? "c:/" + filename.replace("src/", "") : "c:/" + filename.replace("src/", "");
111         workbook.write(new FileOutputStream(savedName));
112     }
113 
114 }


excel基础元素

工作簿
工作表(属于工作簿)
行(属于工作表)
单元格(属于行;由行和列确定)

-------------操作excel
1、创建/读取工作簿
2、创建/读取工作表
3、创建/读取行
4、创建/读取单元格


-----------excel样式

合并单元格对象(CellRangeAddress)属于工作簿;运用于工作表

CellRangeAddress(int firstRow, int lastRow, int firstCol, int lastCol) 起始行号,结束行号,起始列号,结束列号


样式是属于工作簿的;运用于单元格

字体是属于工作簿的;加载于样式;通用样式运用于单元格













以上是关于Java操作Excel之POI简单例子的主要内容,如果未能解决你的问题,请参考以下文章

一脸懵逼学习Java操作Excel之POI(Apache POI)

一脸懵逼学习Java操作Excel之POI(Apache POI)

Java操作Excel之POI:java读写excel文件以及打印设置

JAVA操作Excle之Poi

java之操作excel类

java用poi导出word文档,我要导出一个表格,表格的单元格中还要有一个表格,请问怎么实现