在編程中經常需要使用到表格(報表)的處理主要以Excel表格為主。下面給出用java讀取excel表格方法:
1.添加jar文件
java導入導出Excel文件要引入jxl.jar包,最關鍵的是這套API是純Java的,并不依賴Windows系統,即使運行在Linux下,它同樣能夠正確的處理Excel文件。下載地址:http://www.andykhan.com/jexcelapi/
2.jxl對Excel表格的認識
(1)每個單元格的位置認為是由一個二維坐標(i,j)給定,其中i表示列,j表示行,并且從上到下遞增,從左到右遞增。
(2)對于合并單元格的以最左,最上的單元格的坐標為準。如下圖中t.xls,一班名單(0,0),陳茵(1,2),陳開先(1,6)。
3.java代碼對t.xls的讀取
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
import java.io.File; import jxl.*; public class Read_excel{ public static void main(String[] args) { int i; Sheet sheet; Workbook book; Cell cell1,cell2,cell3; try { //t.xls為要讀取的excel文件名 book= Workbook.getWorkbook( new File( "t.xls" )); //獲得第一個工作表對象(ecxel中sheet的編號從0開始,0,1,2,3,....) sheet=book.getSheet( 0 ); //獲取左上角的單元格 cell1=sheet.getCell( 0 , 0 ); System.out.println( "標題:" +cell1.getContents()); i= 1 ; while ( true ) { //獲取每一行的單元格 cell1=sheet.getCell( 0 ,i); //(列,行) cell2=sheet.getCell( 1 ,i); cell3=sheet.getCell( 2 ,i); if ( "" .equals(cell1.getContents())== true ) //如果讀取的數據為空 break ; System.out.println(cell1.getContents()+ "\t" +cell2.getContents()+ "\t" +cell3.getContents()); i++; } book.close(); } catch (Exception e) { } } } |