Java读取Excel表格
package com.hai.util;
import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
public class ReadExcel {
public static void main(String[] args) throws Exception {
long t1 = new Date().getTime();
excel();
long t2 = new Date().getTime();
System.out.println((t2-t1)/1000 + "秒");
}
public static void excel() throws Exception {
File file = new File("C:\\Users\\admin\\Desktop\\排班表\\七月出车表.xlsx");
if (!file.exists()){
throw new Exception("文件不存在!");
}
InputStream in = new FileInputStream(file);
// 读取整个Excel
XSSFWorkbook sheets = new XSSFWorkbook(in);
// 获取第一个表单Sheet
XSSFSheet sheetAt = sheets.getSheetAt(0);
//默认第一行为标题行,i = 0
XSSFRow titleRow = sheetAt.getRow(0);
// 循环获取每一行数据
ArrayList<String> dirverName = new ArrayList<>();
for (int i = 0; i < 740; i++) {
XSSFRow row = sheetAt.getRow(i + 1);
if (row != null){
if (!row.getCell(3).toString().equals(""))
dirverName.add(row.getCell(3).toString());
}
}
HashSet<String> hashSet = new HashSet<>(dirverName);
System.err.println("司机数量:"+hashSet.size());
for (String s : hashSet) {
System.err.println(s);
}
}
}