随着时代的发展,越来越多的人投入到java的学习中来。今天就来为大家介绍一些java基础知识,java中POI的结构说明以及Excel单元格操作的展示。
首先我们来看一下POI结构说明。
它的包名称说明如下所示:
⑴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格式档案的功能。
接下来是Excel的单元格操作,代码如下所示:
//Excel的单元格操作 @Test public void testExcel6() throws IOException { //创建Excel工作薄对象 HSSFWorkbook workbook = new HSSFWorkbook(); //创建Excel工作表对象 HSSFSheet sheet = workbook.createSheet("wj"); //创建行的单元格,从0开始 HSSFRow row = sheet.createRow(0); //创建单元格 HSSFCell cell = row.createCell(0); //设置值 cell.setCellValue(new Date()); //创建单元格样式 HSSFCellStyle style = workbook.createCellStyle(); style.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm")); cell.setCellStyle(style); //设置保留2位小数--使用Excel内嵌的格式 HSSFCell cell1 = row.createCell(1); cell1.setCellValue(12.3456789); style = workbook.createCellStyle(); style.setDataFormat(HSSFDataFormat.getBuiltinFormat("0.00")); cell1.setCellStyle(style); //设置货币格式--使用自定义的格式 HSSFCell cell2 = row.createCell(2); cell2.setCellValue(12345.6789); style = workbook.createCellStyle(); style.setDataFormat(workbook.createDataFormat() .getFormat("¥#,##0")); cell2.setCellStyle(style); //设置百分比格式--使用自定义的格式 HSSFCell cell3 = row.createCell(3); cell3.setCellValue(0.123456789); style = workbook.createCellStyle(); style.setDataFormat(workbook.createDataFormat() .getFormat("0.00%")); cell3.setCellStyle(style); //设置中文大写格式--使用自定义的格式 HSSFCell cell4 = row.createCell(4); cell4.setCellValue(12345); style = workbook.createCellStyle(); style.setDataFormat(workbook.createDataFormat() .getFormat("[DbNum2][$-804]0")); cell4.setCellStyle(style); //设置科学计数法格式--使用自定义的格式 HSSFCell cell5 = row.createCell(5); cell5.setCellValue(12345); style = workbook.createCellStyle(); style.setDataFormat(workbook.createDataFormat() .getFormat("0.00E+00")); cell5.setCellStyle(style); //文档输出 FileOutputStream out = new FileOutputStream("/Users/wangjun/temp/" + new SimpleDateFormat("yyyyMMddHHmmss") .format(new Date()) .toString() + ".xls"); workbook.write(out); out.close(); }
补充一下:
HSSFDataFormat.getFormat和HSSFDataFormat.getBuiltinFormat的区别主要在于,①当使用Excel内嵌的的格式时,直接用HSSFDataFormat.getBuiltinFormat静态方法就可以;②当使用自定义的格式时,必须先调用HSSFWorkbook.createDataFormat(),因为这时在底层会先找是否有匹配的内嵌FormatRecord,如果没有就会新建一个FormatRecord,因此必须先调用这个方法,然后可以用获得的HSSFDataFormat实例getFormat方法了。当然相比之下这种方式比较麻烦,所以内嵌格式还是用HSSFDataFormat.getBuiltinFormat静态方法更好。
以上就是关于java中POI的结构说明以及Excel单元格操作展示的主要内容。想要了解更多java基础,敬请关注奇Q工具网。
推荐阅读: