//传入一个filePath文件路径;返回取出Excel表中的数据拼接而成的字符串的集合
public List<String> Import(String filePath) throws IOException {
File file = new File(filePath);
FileInputStream fileInputStream = new FileInputStream(file);
HSSFWorkbook hssfWorkbook = new HSSFWorkbook(fileInputStream);
HSSFSheet sheetAt = hssfWorkbook.getSheetAt(0);
// 总行数
int totoalRows = sheetAt.getLastRowNum();
//取这一行指定的多个数据时可以先将其拼接为一个字符串
String LonLat = "";
List<String> LonLats = new ArrayList<>();
//循环遍历取出每一行的第1,2,3列
for (int i = 1; i < totoalRows; i++) {
HSSFRow row = sheetAt.getRow(i);
HSSFCell name = row.getCell(1);
HSSFCell lat = row.getCell(2);
HSSFCell lon = row.getCell(3);
name.setCellType(Cell.CELL_TYPE_STRING);
lat.setCellType(Cell.CELL_TYPE_NUMERIC);
lon.setCellType(Cell.CELL_TYPE_NUMERIC);
LonLat += name.getStringCellValue() + "-" + df.format(lat.getNumericCellValue()) + " " + df.format(lon.getNumericCellValue()) ;
LonLats.add(LonLat);
LonLat="";
}
return LonLats;
}
HSSFWorkbook针对Excel2003以前的版本格式,如:*.xls;
如果Excel2003以后的版本格式,如:*.xlsx 应该使用XSSFWorkbook;
直接把上面的代码HSSF的 H -> F 即可。