JAVA使用POI读取EXCEL文件的简单model

来源:互联网 发布:淘宝 颠覆平庸电子书 编辑:程序博客网 时间:2024/04/30 15:40
 
package poi;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.util.Iterator;import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.usermodel.Row;import org.apache.poi.ss.usermodel.Sheet;import org.apache.poi.ss.usermodel.Workbook;import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class ReadExcel001 {public static void main(String[] args) {readXml("D:/test.xlsx");System.out.println("-------------");readXml("d:/test2.xls"); }public static void readXml(String fileName){boolean isE2007 = false;//判断是否是excel2007格式if(fileName.endsWith("xlsx"))isE2007 = true;try {InputStream input = new FileInputStream(fileName);//建立输入流Workbook wb  = null;//根据文件格式(2003或者2007)来初始化if(isE2007)wb = new XSSFWorkbook(input);elsewb = new HSSFWorkbook(input);Sheet sheet = wb.getSheetAt(0);//获得第一个表单Iterator<Row> rows = sheet.rowIterator();//获得第一个表单的迭代器while (rows.hasNext()) {Row row = rows.next();//获得行数据System.out.println("Row #" + row.getRowNum());//获得行号从0开始Iterator<Cell> cells = row.cellIterator();//获得第一行的迭代器while (cells.hasNext()) {Cell cell = cells.next();System.out.println("Cell #" + cell.getColumnIndex());switch (cell.getCellType()) {//根据cell中的类型来输出数据case HSSFCell.CELL_TYPE_NUMERIC:System.out.println(cell.getNumericCellValue());break;case HSSFCell.CELL_TYPE_STRING:System.out.println(cell.getStringCellValue());break;case HSSFCell.CELL_TYPE_BOOLEAN:System.out.println(cell.getBooleanCellValue());break;case HSSFCell.CELL_TYPE_FORMULA:System.out.println(cell.getCellFormula());break;default:System.out.println("unsuported sell type");break;}}}} catch (IOException ex) {ex.printStackTrace();}}}

原创粉丝点击