Java 讀取 Excel 發生錯誤

2013-08-16 8:05 am
package excel;


import java.io.IOException;
import java.io.File;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;


public class Excel {
public static void main(String[] arge) {
try {
Workbook workbook = Workbook.getWorkbook(new File("test.xls")); //打開哪份文件檔
Sheet sheet = workbook.getSheet("Sheet"); //指定要讀取哪個Sheet
System.out.println(sheet.getCell(0, 1).getContents()); //取得Cell中的資料
System.out.println(sheet.getColumns()); //讀出文件有幾列
System.out.println(sheet.getRows()); //讀出文件有幾行
workbook.close(); //.關閉文件
}
catch (BiffException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}


}
}

運行時出現
Exception in thread "main" java.lang.NullPointerException
at excel.Excel.main(Excel.java:17)
Java Result: 1

使用環境是NetBeans IDE 7.3.1
不知道是哪邊出錯了 有人能幫我看看嗎?

回答 (4)

2013-08-19 9:20 am
✔ 最佳答案
檢查你的 excel 檔案的 sheet name 是不是叫做 "Sheet" 如果不是的話
將下面"Sheet" 改成你 excel 檔案內的 sheet name 應該就可以了 !!

Sheet sheet = workbook.getSheet("Sheet"); //指定要讀取哪個Sheet
參考: me
2015-05-07 9:03 am
我本來從沒遇到過修NAS修硬碟和隨身碟要資料救援,一開始也跟大家一樣總是問價格到處比價,因為不懂,凡事都從價格,考量,輕言聽信朋友介紹比較便宜一家,找錯家之後痛苦尾隨而來,以下省略500字........,後來自己上網找資料救援找到硬碟醫院,和他們經理溝通之後給我正確觀念,這是妳寶貴的資料,妳要考慮是救不救的回問題,而不是貴不貴問題,如果重要請找對人搶救NAS資料硬碟救援才能恢復你的NAS中多顆的硬碟資料
http://www.datamaster.com.tw/
2013-08-16 8:21 pm
試過了還是一樣耶 @@

Exception in thread "main" java.lang.NullPointerException
at excel.Excel.main(Excel.java:17)
Java Result: 1
2013-08-16 4:56 pm
檔案要使用絕對路徑,如果檔案在 E:/temp 目錄中:
new File("test.xls")
要改成
new File("E:/temp/test.xls")


收錄日期: 2021-04-30 18:00:06
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20130816000015KK00085

檢視 Wayback Machine 備份