上次已经为大家介绍过java中Excel使用图形的操作方法,今天要介绍的依旧是与java中Excel相关的知识,也就是java中Excel行列操作以及POI对Word的基本操作有哪些?一起来看看吧。
首先说的是Excel的行列操作。
一、组合行、列,代码如下所示:
HSSFSheet sheet = workbook.createSheet("Test0"); // 创建工作表(Sheet) sheet.groupRow(1, 3); //组合行 sheet.groupRow(2, 4); //组合行 sheet.groupColumn(2, 7); //组合列
图片如下:
另外补充一些关于组合的知识点,组合分为行组合和列组合。行组合的意思就是让n行组合成一个集合,能够进行展开和合拢操作。同时使用POI也可以取消组合,
二、锁定列
在Excel中,有可能会出现列数太多或是行数太多的情况,这个时候可以通过锁定列来冻结部分列,不随滚动条滑动,方便查看。代码如下所示:
HSSFSheet sheet = workbook.createSheet("Test0"); // 创建工作表(Sheet) sheet.createFreezePane(2, 3, 15, 25); //冻结行列
图片如下所示:
另外对CreateFreezePane的参数作一下说明:
1.第一个参数表示要冻结的列数;
2.第二个参数表示要冻结的行数,这里只冻结列所以为0;
3.第三个参数表示右边区域可见的首列序号,从1开始计算;
4.第四个参数表示下边区域可见的首行序号,也是从1开始计算,这里是冻结列,所以为0;
三、上下移动行,代码如下所示:
FileInputStream stream = new FileInputStream(filePath); HSSFWorkbook workbook = new HSSFWorkbook(stream); HSSFSheet sheet = workbook.getSheet("Test0"); sheet.shiftRows(2, 4, 2); //把第3行到第4行向下移动两行
图片如下:
对于HSSFSheet.shiftRows(startRow, endRow, n)参数作一个说明:
1.startRow:需要移动的起始行;
2.endRow:需要移动的结束行;
3.n:移动的位置,正数表示向下移动,负数表示向上移动;
接下来介绍POI对Word的基本操作
一、简述POI操作Word
虽然POI读写Excel功能强大、操作简单。但是POI操作时,一般只用它读取word文档,因为POI只能创建简单的word文档,相比之下POI操作时的功能太少。
二、POI创建Word文档,代码如下所示:
XWPFDocument doc = new XWPFDocument(); // 创建Word文件 XWPFParagraph p = doc.createParagraph(); // 新建一个段落 p.setAlignment(ParagraphAlignment.CENTER); // 设置段落的对齐方式 p.setBorderBottom(Borders.DOUBLE); //设置下边框 p.setBorderTop(Borders.DOUBLE); //设置上边框 p.setBorderRight(Borders.DOUBLE); //设置右边框 p.setBorderLeft(Borders.DOUBLE); //设置左边框 XWPFRun r = p.createRun(); //创建段落文本 r.setText("POI创建的Word段落文本"); r.setBold(true); //设置为粗体 r.setColor("FF0000"); //设置颜色 p = doc.createParagraph(); // 新建一个段落 r = p.createRun(); r.setText("POI读写Excel功能强大、操作简单。"); XWPFTable table = doc.createTable(3, 3); //创建一个表格 table.getRow(0) .getCell(0) .setText("表格1"); table.getRow(1) .getCell(1) .setText("表格2"); table.getRow(2) .getCell(2) .setText("表格3"); FileOutputStream out = newFileOutputStream("d:\\POI\\sample.doc"); doc.write(out); out.close();
图片如下:
三、POI读取Word文档里的文字,代码如下所示:
FileInputStream stream = newFileInputStream("d:\\POI\\sample.doc"); XWPFDocument doc = new XWPFDocument(stream); // 创建Word文件 for (XWPFParagraph p: doc.getParagraphs()) //遍历段落 { System.out.print(p.getParagraphText()); } for (XWPFTable table: doc.getTables()) //遍历表格 { for (XWPFTableRow row: table.getRows()) { for (XWPFTableCell cell: row.getTableCells()) { System.out.print(cell.getText()); } } }
图片如下:
以上就是关于在java中Excel行列操作以及POI对Word的基本操作的主要内容,想要了解更多java经典例子以及常见问题,敬请关注奇Q工具网。
推荐阅读: