//ÄãÒ²¿ÉÒÔ½«ÈÕÆÚÉèÖÃΪjava.util.Calendar cell = row.createCell(2);
cell.setCellValue(Calendar.getInstance()); cell.setCellStyle(cellStyle);
//½«Êä³öдÈëÎļþ
FileOutputStream fileOut = new FileOutputStream(\ wb.write(fileOut); fileOut.close();
5¡¢Ê¹Óò»Í¬ÀàÐ͵ĵ¥Ôª¸ñ
Workbook wb = new HSSFWorkbook();
Sheet sheet = wb.createSheet(\ Row row = sheet.createRow((short)2); row.createCell(0).setCellValue(1.1);
row.createCell(1).setCellValue(new Date());
row.createCell(2).setCellValue(Calendar.getInstance()); row.createCell(3).setCellValue(\ row.createCell(4).setCellValue(true);
row.createCell(5).setCellType(CellType.ERROR);
//½«Êä³öдÈëÎļþ
FileOutputStream fileOut = new FileOutputStream(\ wb.write(fileOut); fileOut.close();
6¡¢ÔÚÐк͵¥Ôª¸ñÉϵĵü´ú
ÔÚijЩÇé¿öÏÂ,ÔÚµü´úʱ,ÄúÐèÒªÍêÈ«¿ØÖÆÈçºÎ´¦Àíȱʧ»ò¿Õ°×Ðк͵¥Ôª¸ñ, ²¢ÇÒÄúÐèҪȷ±£·ÃÎÊÿ¸öµ¥Ôª¸ñ,¶ø²»½ö½öÊÇÎļþÖж¨ÒåµÄµ¥Ôª¸ñ¡£
(CellIteratorÖ»»á·µ»ØÎļþÖж¨ÒåµÄµ¥Ôª¸ñ,ÕâÖ÷ÒªÊǾßÓÐÖµ»òÑùʽµÄµ¥Ôª¸ñ,µ«ËüÈ¡¾öÓÚExcel)¡£
ÔÚÕâЩÇé¿öÏÂ,ÄúÓ¦¸Ã»ñÈ¡ÐеĵÚÒ»ÁкÍ×îºóÒ»ÁÐÐÅÏ¢,È»ºóµ÷ÓÃgetCell(int,MissingCellPolicy)À´»ñÈ¡µ¥Ôª¸ñ¡£
ʹÓÃMissingCellPolicy¿ØÖÆÈçºÎ´¦Àí¿Õ°×»ò¿Õµ¥Ôª¸ñ¡£ //¾ö¶¨Òª´¦ÀíµÄÐÐ
int rowStart = Math.min(15,sheet.getFirstRowNum()); int rowEnd = Math.max(1400,sheet.getLastRowNum());
for(int rowNum = rowStart; rowNum Row r = sheet.getRow(rowNum); if(r == null){ //ÕâÕûÐÐÊÇ¿ÕµÄ //¸ù¾ÝÐèÒª´¦ÀíËü continue; } int lastColumn = Math.max(r.getLastCellNum(),MY_MINIMUM_COLUMN_COUNT); for(int cn = 0; cn Cell c = r.getCell(cn,Row.RETURN_BLANK_AS_NULL); if(c == null){ //´Ëµ¥Ôª¸ñÖеĵç×Ó±í¸ñΪ¿Õ } else { //×öһЩÓÐÓõĵ¥Ôª¸ñµÄÄÚÈÝ } } } 7¡¢»ñÈ¡µ¥Ôª¸ñÄÚÈÝ Òª»ñÈ¡µ¥Ôª¸ñµÄÄÚÈÝ,ÄãÊ×ÏÈÐèÒªÖªµÀËüÊÇʲôÑùµÄµ¥Ôª¸ñ(ÀýÈç,ÒªÇó×Ö·û´®µ¥Ôª¸ñµÄÊý×ÖÄÚÈÝ»áµÃµ½Ò»¸öNumberFormatException)¡£ Òò´Ë,Äú½«ÐèÒª´ò¿ªµ¥Ôª¸ñµÄÀàÐÍ,È»ºóΪ¸Ãµ¥Ôª¸ñµ÷ÓÃÊʵ±µÄgetter¡£ ÔÚÏÂÃæµÄ´úÂëÖÐ,ÎÒÃÇÑ»·±éÀúÿ¸öµ¥Ôª¸ñ,´òÓ¡³öµ¥Ôª¸ñµÄÒýÓÃ(ÀýÈçA3),È»ºó´òÓ¡µ¥Ôª¸ñµÄÄÚÈÝ¡£ DataFormatter formatter = new DataFormatter(); Sheet sheet1 = wb.getSheetAt(0); for (Row row : sheet1) { for (Cell cell : row) { CellReference cellRef = new CellReference(row.getRowNum(), cell.getColumnIndex()); System.out.print(cellRef.formatAsString()); System.out.print(\ //ͨ¹ý»ñÈ¡µ¥Ôª¸ñÖµ²¢Ó¦ÓÃÈκÎÊý¾Ý¸ñʽ(ÈÕÆÚ,0.00,1.23e9,$ 1.23µÈ)»ñÈ¡µ¥Ôª¸ñÖÐÏÔʾµÄÎı¾¡£ String text = formatter.formatCellValue(cell); System.out.println(text); //»òÕß,×Ô¼º»ñȡֵºÍ¸ñʽ»¯ switch (cell.getCellTypeEnum()) { case CellType.STRING: System.out.println(cell.getRichStringCellValue().getString()); break; case CellType.NUMERIC: if (DateUtil.isCellDateFormatted(cell)) { System.out.println(cell.getDateCellValue()); } else { System.out.println(cell.getNumericCellValue()); } break; case CellType.BOOLEAN: System.out.println(cell.getBooleanCellValue()); break; case CellType.FORMULA: System.out.println(cell.getCellFormula()); break; case CellType.BLANK: System.out.println(); break; default: System.out.println(); } } } 8¡¢Îı¾ÌáÈ¡ ¶ÔÓÚ´ó¶àÊýÎı¾ÌáÈ¡ÐèÇó,±ê×¼ExcelExtractorÀàÓ¦¸ÃÌṩÁËÄúËùÐèÒªµÄ¡£ InputStream inp = new FileInputStream(\ HSSFWorkbook wb = new HSSFWorkbook(new POIFSFileSystem(inp)); ExcelExtractor extractor = new ExcelExtractor(wb); extractor.setFormulasNotResults(true); extractor.setIncludeSheetNames(false); String text = extractor.getText(); ¶ÔÓڷdz£ÆæÌصÄÎı¾ÌáÈ¡,XLSµ½CSVµÈ,¿´¿´/src /examples /src /org /apache /poi /hssf /eventusermodel /examples /XLS2CSV mra.java 9¡¢ÎļþÓëInputStreams ´ò¿ªWorkbook (.xls HSSFWorkbook»ò.xlsx XSSFWorkbook)ʱ,¿ÉÒÔ´ÓÎļþ»òInputStream¼ÓÔØWorkbook ¡£Ê¹ÓÃFile¶ÔÏóÔÊÐí½ÏµÍµÄÄÚ´æÏûºÄ,¶øInputStreamÐèÒª¸ü¶àµÄÄÚ´æ,ÒòΪËü±ØÐë »º³åÕû¸öÎļþ¡£ Èç¹ûʹÓÃWorkbookFactory,ºÜÈÝÒ×ʹÓÃÒ»¸ö»òÁíÒ»¸ö: //ʹÓÃÎļþ Workbook wb = WorkbookFactory.create(new File(\ //ʹÓÃInputStream,ÐèÒª¸ü¶àÄÚ´æ Workbook wb = WorkbookFactory.create(new FileInputStream(\ Èç¹ûÖ±½ÓʹÓÃHSSFWorkbook»òXSSFWorkbook,ͨ³£Ó¦¸Ãͨ¹ýPOIFSFileSystem»òOPCPackageÀ´ÍêÈ«¿ØÖÆÉúÃüÖÜÆÚ(°üÀ¨Íê³Éºó¹Ø±ÕÎļþ): //HSSFWorkbook, File NPOIFSFileSystem fs = new NPOIFSFileSystem(new File(\ HSSFWorkbook wb = new HSSFWorkbook(fs.getRoot(), true); .... fs.close(); //HSSFWorkbook, InputStream, ÐèÒª¸ü¶àÄÚ´æ NPOIFSFileSystem fs = new NPOIFSFileSystem(myInputStream); HSSFWorkbook wb = new HSSFWorkbook(fs.getRoot(), true); //XSSFWorkbook, File OPCPackage pkg = OPCPackage.open(new File(\ XSSFWorkbook wb = new XSSFWorkbook(pkg); .... pkg.close(); //XSSFWorkbook, InputStream, ÐèÒª¸ü¶àÄÚ´æ OPCPackage pkg = OPCPackage.open(myInputStream); XSSFWorkbook wb = new XSSFWorkbook(pkg); .... pkg.close(); 10¡¢¶ÔÆëµ¥Ôª¸ñ public static void main(String[] args) throws Exception { Workbook wb = new XSSFWorkbook(); //or new HSSFWorkbook(); Sheet sheet = wb.createSheet(); Row row = sheet.createRow((short) 2); row.setHeightInPoints(30); createCell(wb, row, (short) 0, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_BOTTOM); createCell(wb, row, (short) 1, CellStyle.ALIGN_CENTER_SELECTION,
Ïà¹ØÍÆ¼ö£º