在编程中经常需要使用到表格(报表)的处理主要以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) { } } } |