我是靠谱客的博主 怕孤单砖头,最近开发中收集的这篇文章主要介绍Java 读取 Excel 文件格式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在 Java 中 可使用 apache.poi 来读取 Excel 文件,相关代码如下:

/**
*
* @param fileIn
* @param sheetIndex
读取 excel 的哪个 sheet
* @param rowIndexs
从第几行开始读取,下标从 0 开始
* @return
* @throws IOException
*/
public List<List<String>> readExcel(InputStream fileIn, int sheetIndex, int rowIndexs) throws IOException {
POIFSFileSystem fs = new POIFSFileSystem(fileIn);
HSSFWorkbook wb = new HSSFWorkbook(fs);
// 遍历每个 Sheet
// for (int index = 0; index < wb.getNumberOfSheets(); index++) {
// HSSFSheet st = wb.getSheetAt(index);
// }
// 读取第几个 Sheet,从 0 开始
HSSFSheet st = wb.getSheetAt(sheetIndex);
List<List<String>> list = new ArrayList<List<String>>();
// 读取每一行
// 注意这里必须是小于等于 <=
for (int rowIndex = rowIndexs; rowIndex <= st.getLastRowNum(); rowIndex++) {
HSSFRow row = st.getRow(rowIndex);
List<String> l = new ArrayList<String>();
for (Cell cell : row) {
// String value = cellToString(wb, cell); 对日期类型的数据转换会有问题
String value = getCellValue(cell);
l.add(value);
}
list.add(l);
}
return list;
}
private String getCellValue(Cell cell) {
String value = "";
if( cell.getCellTypeEnum() == CellType.STRING) {
// 字符串类型
value = cell.getStringCellValue();
} else if (cell.getCellTypeEnum() == CellType.NUMERIC) {
if (HSSFDateUtil.isCellDateFormatted(cell)) {
// 日期类型
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
value = fmt.format(cell.getDateCellValue());
} else {
// 数字类型
value = String.valueOf(Double.valueOf(cell.getNumericCellValue()).intValue());
}
} else if (cell.getCellTypeEnum() == CellType.BLANK){
value = "";
} else {
value = "";
}
return value;
}
private String cellToString(HSSFWorkbook wb, Cell cell) {
// 用于数据类型转换
DataFormatter objDefaultFormat = new DataFormatter();
FormulaEvaluator objFormulaEvaluator = new HSSFFormulaEvaluator(wb);
objFormulaEvaluator.evaluate(cell);
return objDefaultFormat.formatCellValue(cell, objFormulaEvaluator);
}

apache.poi 的 maven 依赖:

<dependencies>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>5.0.0</version>
</dependency>
</dependencies>

最后

以上就是怕孤单砖头为你收集整理的Java 读取 Excel 文件格式的全部内容,希望文章能够帮你解决Java 读取 Excel 文件格式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(77)

评论列表共有 0 条评论

立即
投稿
返回
顶部