JAVA解析EXCEL(2003和2007)

來源:互聯網
上載者:User

標籤:

本文參考: 
http://wenku.baidu.com/view/707f07d95022aaea998f0fd1.html 

http://surfingforrest.iteye.com/blog/1709555

http://feitian0127.iteye.com/blog/1152524 

感謝兩位。 

使用的包: 

 
代碼如下: 

import java.util.ArrayList;   import java.io.FileInputStream;  import java.io.IOException;  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 ReadExcel {      public ArrayList<ArrayList<String>> readExcel(String fileName,String path) {          ArrayList<ArrayList<String>> Row =new ArrayList<ArrayList<String>>();                    try {              Workbook workBook = null;              try {              workBook = new XSSFWorkbook(path+"\\"+fileName);              } catch (Exception ex) {              workBook = new HSSFWorkbook(new FileInputStream(path+"\\"+fileName));          }                                           for (int numSheet = 0; numSheet < workBook.getNumberOfSheets(); numSheet++) {                  Sheet sheet = workBook.getSheetAt(numSheet);                  if (sheet == null) {                      continue;                  }                  // 迴圈行Row                  for (int rowNum = 1; rowNum <= sheet.getLastRowNum(); rowNum++) {                      Row row = sheet.getRow(rowNum);                      if (row == null) {                          continue;                      }                                            // 迴圈列Cell                      ArrayList<String> arrCell =new ArrayList<String>();                      for (int cellNum = 0; cellNum <= row.getLastCellNum(); cellNum++) {                          Cell cell = row.getCell(cellNum);                          if (cell == null) {                              continue;                          }                          arrCell.add(getValue(cell));                      }                      Row.add(arrCell);                  }              }          } catch (IOException e) {              System.out.println("e:"+e);          }                return Row;      }        private String getValue(Cell cell) {          if (cell.getCellType() == cell.CELL_TYPE_BOOLEAN) {              return String.valueOf(cell.getBooleanCellValue());          } else if (cell.getCellType() == cell.CELL_TYPE_NUMERIC) {              return String.valueOf(cell.getNumericCellValue());          } else {              return String.valueOf(cell.getStringCellValue());          }      }        public static void main(String[] args) {          ReadExcel s= new ReadExcel();          //ArrayList<ArrayList<String>> row=s.readExcel("TEST.xlsx","D:\\Program Files\\Java");          ArrayList<ArrayList<String>> row=s.readExcel("TEST1.xls","D:\\Program Files\\Java");          System.out.println("size:"+row.size());          for (ArrayList<String> cell : row) {              for (String str : cell) {                  System.out.println(str);                  }              }      }  }  

JAVA解析EXCEL(2003和2007)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.