首页 Java POI读取Office excel (2003,2007)及相关jar包

Java POI读取Office excel (2003,2007)及相关jar包

举报
开通vip

Java POI读取Office excel (2003,2007)及相关jar包Java POI读取Office excel (2003,2007)及相关jar包 Java POI?ÁÈ?Office excel (2003,2007)??Ïà?Øjar?ü poi jar?üÏÂÔØ ?º ?ÁÈ?excel ÎÄ?þµÄ java ?úÂë?º [java] view plaincopy import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; impo...

Java POI读取Office excel (2003,2007)及相关jar包
Java POI读取Office excel (2003,2007)及相关jar包 Java POI?ÁÈ?Office excel (2003,2007)??Ïà?Øjar?ü poi jar?üÏÂÔØ ?º ?ÁÈ?excel ÎÄ?þµÄ java ?úÂë?º [java] view plaincopy import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.LinkedList; import java.util.List; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFDateUtil; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class ReadExcel { /** * ?ÔÍâÌá???ÁÈ?excel µÄ???? * */ public static List> readExcel(File file) throws IOException{ String fileName = file.getName(); String extension = fileName.lastIndexOf(".")==-1?"":fileName.substring(fileName.lastI ndexOf(".")+1); if("xls".equals(extension)){ return read2003Excel(file); }else if("xlsx".equals(extension)){ return read2007Excel(file); }else{ throw new IOException("??Ö??ÖµÄÎÄ?þÀàÐÍ"); } } /** * ?ÁÈ? office 2003 excel * @throws IOException * @throws FileNotFoundException */ private static List> read2003Excel(File file) throws IOException{ List> list = new LinkedList>(); HSSFWorkbook hwb = new HSSFWorkbook(new FileInputStream(file)); HSSFSheet sheet = hwb.getSheetAt(0); Object value = null; HSSFRow row = null; HSSFCell cell = null; for(int i = sheet.getFirstRowNum();i<= sheet.getPhysicalNumberOfRows();i++){ row = sheet.getRow(i); if (row == null) { continue; } List linked = new LinkedList(); for (int j = row.getFirstCellNum(); j <= row.getLastCellNum(); j++) { cell = row.getCell(j); if (cell == null) { continue; } DecimalFormat df = new DecimalFormat("0");// ?ñÊ??? number String ×Ö?û SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// ?ñÊ???ÈÕÆÚ×Ö?û?? DecimalFormat nf = new DecimalFormat("0.00");// ?ñÊ???Êý×Ö switch (cell.getCellType()) { case XSSFCell.CELL_TYPE_STRING: System.out.println(i+"ÐÐ"+j+" ÁÐ is String type"); value = cell.getStringCellValue(); break; case XSSFCell.CELL_TYPE_NUMERIC: System.out.println(i+"ÐÐ"+j+" ÁÐ is Number type ; DateFormt:"+cell.getCellStyle().getDataFormatString()); if("@".equals(cell.getCellStyle().getDataFormatString())){ value = df.format(cell.getNumericCellValue()); } else if("General".equals(cell.getCellStyle().getDataFormatString())){ value = nf.format(cell.getNumericCellValue()); }else{ value = sdf.format(HSSFDateUtil.getJavaDate(cell.getNumericCellValue())); } break; case XSSFCell.CELL_TYPE_BOOLEAN: System.out.println(i+"ÐÐ"+j+" ÁÐ is Boolean type"); value = cell.getBooleanCellValue(); break; case XSSFCell.CELL_TYPE_BLANK: System.out.println(i+"ÐÐ"+j+" ÁÐ is Blank type"); value = ""; break; default: System.out.println(i+"ÐÐ"+j+" ÁÐ is default type"); value = cell.toString(); } if (value == null || "".equals(value)) { continue; } linked.add(value); } list.add(linked); } return list; } /** * ?ÁÈ?Office 2007 excel * */ private static List> read2007Excel(File file) throws IOException { List> list = new LinkedList>(); // ??Ôì XSSFWorkbook ?ÔÏó??strPath ??ÈëÎÄ?þÂ??? XSSFWorkbook xwb = new XSSFWorkbook(new FileInputStream(file)); // ?ÁÈ?µÚÒ?ÕÂ?í?ñÄÚÈÝ XSSFSheet sheet = xwb.getSheetAt(0); Object value = null; XSSFRow row = null; XSSFCell cell = null; for (int i = sheet.getFirstRowNum(); i <= sheet .getPhysicalNumberOfRows(); i++) { row = sheet.getRow(i); if (row == null) { continue; } List linked = new LinkedList(); for (int j = row.getFirstCellNum(); j <= row.getLastCellNum(); j++) { cell = row.getCell(j); if (cell == null) { continue; } DecimalFormat df = new DecimalFormat("0");// ?ñÊ??? number String ×Ö?û SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// ?ñÊ???ÈÕÆÚ×Ö?û?? DecimalFormat nf = new DecimalFormat("0.00");// ?ñÊ???Êý×Ö switch (cell.getCellType()) { case XSSFCell.CELL_TYPE_STRING: System.out.println(i+"ÐÐ"+j+" ÁÐ is String type"); value = cell.getStringCellValue(); break; case XSSFCell.CELL_TYPE_NUMERIC: System.out.println(i+"ÐÐ"+j+" ÁÐ is Number type ; DateFormt:"+cell.getCellStyle().getDataFormatString()); if("@".equals(cell.getCellStyle().getDataFormatString())){ value = df.format(cell.getNumericCellValue()); } else if("General".equals(cell.getCellStyle().getDataFormatString())){ value = nf.format(cell.getNumericCellValue()); }else{ value = sdf.format(HSSFDateUtil.getJavaDate(cell.getNumericCellValue())); } break; case XSSFCell.CELL_TYPE_BOOLEAN: System.out.println(i+"ÐÐ"+j+" ÁÐ is Boolean type"); value = cell.getBooleanCellValue(); break; case XSSFCell.CELL_TYPE_BLANK: System.out.println(i+"ÐÐ"+j+" ÁÐ is Blank type"); value = ""; break; default: System.out.println(i+"ÐÐ"+j+" ÁÐ is default type"); value = cell.toString(); } if (value == null || "".equals(value)) { continue; } linked.add(value); } list.add(linked); } return list; } } ˵Ã??º?ÃÀàÖÐ???â×?ÁËÈý?ö???????ÔÍâÌá??µÄ?ÁÈ?excelÎÄ?þµÄ??????Á??öË?ÓеÄ?Ö?ð?ÁÈ?excel2003ºÍexcel2007µÄ??????Íâ??Ê?ÓÃ??Ö?Ðèµ?ÓÃreadExcel ????????ÈëÒ??öFile ?ÎÊý???ÌÐò?ù?ÝÎÄ?þÀ?Õ?ÃûÀ?ÅÐ?ÏÑ?È?ÄÇ?ö????À??ÁÈ?ExcelÎÄ?þ??
本文档为【Java POI读取Office excel &#40;2003,2007&#41;及相关jar包】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_614050
暂无简介~
格式:doc
大小:25KB
软件:Word
页数:8
分类:
上传时间:2018-03-08
浏览量:8