Java操作Excel之Poi(二)

来源:互联网 发布:西北师范知行学院贴吧 编辑:程序博客网 时间:2024/05/20 08:22

1、创建一个时间格式的单元格

Workbook wb=new HSSFWorkbook(); // 定义一个新的工作簿Sheet sheet=wb.createSheet("第一个Sheet页");  // 创建第一个Sheet页Row row=sheet.createRow(0); // 创建一个行Cell cell=row.createCell(0); // 创建一个单元格  第1列cell.setCellValue(new Date());  // 给单元格设置值CreationHelper createHelper=wb.getCreationHelper();CellStyle cellStyle=wb.createCellStyle(); //单元格样式类cellStyle.setDataFormat(createHelper.createDataFormat().getFormat("yyy-mm-dd hh:mm:ss"));cell=row.createCell(1); // 第二列cell.setCellValue(new Date());cell.setCellStyle(cellStyle);cell=row.createCell(2);  // 第三列cell.setCellValue(Calendar.getInstance());cell.setCellStyle(cellStyle);FileOutputStream fileOut=new FileOutputStream("c:\\工作簿.xls");wb.write(fileOut);fileOut.close();

2、处理不同内容格式的单元格

Workbook wb=new HSSFWorkbook(); // 定义一个新的工作簿Sheet sheet=wb.createSheet("第一个Sheet页");  // 创建第一个Sheet页Row row=sheet.createRow(0); // 创建一个行Cell cell=row.createCell(0); // 创建一个单元格  第1列cell.setCellValue(new Date());  // 给单元格设置值row.createCell(1).setCellValue(1);row.createCell(2).setCellValue("一个字符串");row.createCell(3).setCellValue(true);row.createCell(4).setCellValue(HSSFCell.CELL_TYPE_NUMERIC);row.createCell(5).setCellValue(false);FileOutputStream fileOut=new FileOutputStream("c:\\工作簿.xls");wb.write(fileOut);fileOut.close();

3、遍历工作簿的行和列并获取单元格内容

InputStream is=new FileInputStream("c:\\二货名单.xls");POIFSFileSystem fs=new POIFSFileSystem(is);HSSFWorkbook wb=new HSSFWorkbook(fs);HSSFSheet hssfSheet=wb.getSheetAt(0); // 获取第一个Sheet页if(hssfSheet==null){    return;}// 遍历行Rowfor(int rowNum=0;rowNum<=hssfSheet.getLastRowNum();rowNum++){    HSSFRow hssfRow=hssfSheet.getRow(rowNum);    if(hssfRow==null){        continue;    }    // 遍历列Cell    for(int cellNum=0;cellNum<=hssfRow.getLastCellNum();cellNum++){        HSSFCell hssfCell=hssfRow.getCell(cellNum);        if(hssfCell==null){            continue;        }        System.out.print(" "+getValue(hssfCell));    }    System.out.println();}

4、文本提取

InputStream is=new FileInputStream("c:\\二货名单.xls");POIFSFileSystem fs=new POIFSFileSystem(is);HSSFWorkbook wb=new HSSFWorkbook(fs);ExcelExtractor excelExtractor=new ExcelExtractor(wb);excelExtractor.setIncludeSheetNames(false);// 我们不需要Sheet页的名字System.out.println(excelExtractor.getText());
0 0
原创粉丝点击