//1、指定要讀取EXCEL檔案名稱
String filename="E:\\測驗\\xxx.xls";
//2、創建輸入流
FileInputStream input=new FileInputStream(filename);
//3、通過作業簿工廠類來創建作業簿物件
Workbook workbook= WorkbookFactory.create(input);
//4、獲取作業表
Sheet sheet=workbook.getSheet("SQL Results");
// //5、獲取行
// Row row=sheet.getRow(1);
// //6、獲取單元格
// Cell cell=row.getCell(1);
// //7、讀取單元格內容
// System.out.println(cell.getStringCellValue());
//獲取總行數
int rownum=sheet.getPhysicalNumberOfRows();
// Map<String,String> map = new HashMap();
ArrayList<String> list = new ArrayList<>();
//獲取第一行的單元格個數
for(int j=1;j<rownum;j++){
//獲取到每一行
Row row=sheet.getRow(j);
//獲取當前行數的有效的單元格個數(有數的)
// int cellnum=row.getPhysicalNumberOfCells();
int cellnum = row.getLastCellNum(); //空指標報錯說這行有問題,但是我的資料能正常顯示出來。
System.out.println(cellnum);
//獲取每一行下的全部單元格
for(int x=0;x<cellnum;x++){
Cell cell = row.getCell(x);
// map.put(cell.get);
//判斷單元格型別,獲取對應資料
if(cell == null){
list.add(" ");
continue;
}
CellType cellType=cell.getCellType();
if(cellType==CellType.STRING){
list.add(cell.getStringCellValue());
}else if(cellType==CellType.NUMERIC){
list.add(String.valueOf(cell.getNumericCellValue()));
}else if(cellType==CellType.BOOLEAN){
list.add(String.valueOf(cell.getBooleanCellValue()));
}else if(cellType==CellType.BLANK){
list.add(" ");
}
}
System.out.println("");
for (int i=0;i<list.size();i++) {
System.out.print(list.get(i)+"|");
}
}

麻煩各位大佬,幫忙看下,謝謝!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/90424.html
標籤:Java EE
下一篇:mysql全庫搜索
