ExcelReader类
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;

/**
 *  
 *jxl操作excel包括对象Workbook,Sheet,Cell
 *一个excel就对应一个Workbook对象,
 *一个Workbook可以有多个Sheet对象
 *一个Sheet对象可以有多个Cell对象
 * @author Matrix42
 *
 */
public class ExcelReader {
	
	private File excelFile;
	private Workbook workbook;
	private Sheet sheet;
	private int sheetNumber;
	
	//可以用String或File构造一个ExcelReader对象
	public ExcelReader(String filePath,int sheetNumber){
		this.excelFile = new File(filePath);
		this.sheetNumber = sheetNumber;
	}
	
	public ExcelReader(File excelFile,int sheetNumber){
		this.excelFile = excelFile;
		this.sheetNumber = sheetNumber;
	}
	
	//初始化
	public void init() throws BiffException, IOException{
		this.workbook = Workbook.getWorkbook(excelFile);
		this.sheet = workbook.getSheet(sheetNumber);
	}
	
	//获取columnNumber列的所有行,两个重载
	//取一个区间内的
	public ArrayList<String> getColumns(int columnNumber,int start,int end){
		int rows = sheet.getRows();
		int columns = sheet.getColumns();
		if(columns<0||columnNumber>columns-1){
			throw new IllegalArgumentException("column not in range!");
		}
		if(start<0||end>rows-1){
			throw new IllegalArgumentException("row not in range!");
		}
		ArrayList<String> list = new ArrayList<String>();
		for(int i=start;i<=end;i++){
			Cell cell = sheet.getCell(columnNumber,i);
			list.add(cell.getContents());
		}
		return list;
	}
	
	//从start到最后
	public ArrayList<String> getColumns(int columnNumber,int start){
		int rows = sheet.getRows();
		int columns = sheet.getColumns(); 
		int end = rows - 1;
		if(columns<0||columnNumber>columns-1){
			throw new IllegalArgumentException("column not in range!");
		}
		if(start<0){
			throw new IllegalArgumentException("row not in range!");
		}
		ArrayList<String> list = new ArrayList<String>();
		for(int i=start;i<=end;i++){
			Cell cell = sheet.getCell(columnNumber,i);
			list.add(cell.getContents());
		}
		return list;
	}
	
}
时间转换类
public class Time {
	private int d;
	private int h;
	private int m;
	private int s;
	
	//解析出天,时,分,秒,与之前的结果相加
	public void add(String time) {
		int indexOfDay = time.indexOf("天");
		int indexOfHour = time.indexOf("时");
		int indexOfMinute = time.indexOf("分");
		int indexOfSecond = time.indexOf("秒");
		
		if(indexOfDay>0){
			d += Integer.parseInt(time.substring(0,indexOfDay));
		}
		if(indexOfHour>0){
			if(indexOfDay>0){
				h += Integer.parseInt(time.substring(indexOfDay+1,indexOfHour));
			}else {
				h += Integer.parseInt(time.substring(0,indexOfHour));
			}
		}
		if(indexOfMinute>0){
			if(indexOfHour>0){
				m += Integer.parseInt(time.substring(indexOfHour+1,indexOfMinute));
			}else {
				m += Integer.parseInt(time.substring(0,indexOfMinute));
			}
		}
		if(indexOfSecond>0){
			if(indexOfMinute>0){
				s += Integer.parseInt(time.substring(indexOfMinute+1,indexOfSecond));
			}else {
				s += Integer.parseInt(time.substring(indexOfMinute+1,indexOfSecond));
			}
		}
	}
	
	//转换时间
	public String format(){
		int tmp;
		
		tmp = s/60;
		s %= 60;
		
		m = m + tmp;
		tmp = m/60;
		m %= 60;
		
		h = h + tmp;
		tmp = h/24;
		h %= 24;
		
		d = d + tmp;
		
		String t = "";
		if(d!=0){
			t += d+"天";
		}
		if(h!=0){
			t += h+"时";
		}
		if(m!=0){
			t += m+"分";
		}
		if(s!=0){
			t += s+"秒";
		}
		return t;
	}

	public int getD() {
		return d;
	}

	public int getH() {
		return h;
	}

	public int getM() {
		return m;
	}

	public int getS() {
		return s;
	}
	
}

import java.io.IOException;
import java.util.ArrayList;

import jxl.read.biff.BiffException;

public class Client {

	public static void main(String[] args) throws BiffException, IOException {

		//读取第1个Sheet
		ExcelReader reader = new ExcelReader("D:/01.xls", 0);
		reader.init();
		//读取第4列
		ArrayList<String> result = reader.getColumns(3, 1);
		Time time = new Time();
		//把时间加一起
		for (String string : result) {
			time.add(string);
		}
		System.out.println("您的通话总时长为:"+time.format()+"!");
	}

}

使用jxl库解析的excel

excel:


运行结果: