java poi讀取excel

來源:互聯網
上載者:User

首先到poi的官網http://poi.apache.org/上下載最新版的poi包,目前最新版是3.9。


操作excel需要用到如下幾個jar包:

然後在java工程中匯入上述jar包。

代碼如下:

import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.xssf.usermodel.XSSFWorkbook;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.usermodel.DateUtil;import org.apache.poi.ss.usermodel.Row;import org.apache.poi.ss.usermodel.Sheet;import org.apache.poi.ss.usermodel.Workbook;public class Main {public static void main(String[] args) {InputStream in = null;Workbook wb = null;String path = "C:\\Users\\cht\\Desktop\\test.xlsx";try {in = new FileInputStream(path);if (path.endsWith(".xls"))wb = new HSSFWorkbook(in);if (path.endsWith(".xlsx"))wb = new XSSFWorkbook(in);int sheetNum = wb.getNumberOfSheets();if (sheetNum == 0)return;for (int i = 0; i < sheetNum; i++) {Sheet sheet = wb.getSheetAt(i);Iterator<Row> iterRow = sheet.rowIterator();while (iterRow.hasNext()) {Row row = iterRow.next();Iterator<Cell> iterCell = row.cellIterator();while (iterCell.hasNext()) {Cell cell = iterCell.next();System.out.println(getCellValue(cell));}}}} catch (FileNotFoundException fnfEx) {// throw fnfEx;} catch (IOException ioEx) {// throw ioEx;} finally {try {in.close();} catch (Exception ex) {}}}/** * 擷取每個excel儲存格的值 *  * @param cell *            儲存格 * @return 儲存格的內容 */private static String getCellValue(Cell cell) {String val = null;switch (cell.getCellType()) {case Cell.CELL_TYPE_STRING:val = cell.getRichStringCellValue().getString();break;case Cell.CELL_TYPE_NUMERIC:if (DateUtil.isCellDateFormatted(cell)) {val = cell.getDateCellValue().toGMTString();} else {double d = cell.getNumericCellValue();val = String.valueOf(d);int index = val.indexOf(".");if (-1 != index) {val = val.substring(0, index);}}break;case Cell.CELL_TYPE_BOOLEAN:val = String.valueOf(cell.getBooleanCellValue());break;case Cell.CELL_TYPE_FORMULA:val = cell.getCellFormula();break;default:}return val;}}

如果操作.xls檔案只需要如下jar包即可。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.