答题不易,互相帮助,手机提问的朋友在客户端右上角评价点满意即可.
如认可我的回答,请点击采纳为满意回答按钮.
Notes是一个具有Id , RuleID , MainId 属性的javaBean.public static List<Notes>readFromXLS2007(String filePath) {
File excelFile = null// Excel文件对象
InputStream is = null// 输入流对象
String cellStr = null// 单元格,最终按字符串处理
List<Notes>NotesList = new ArrayList<Notes>()// 返回封装数据的List
Notes Notes = null// 每一个Notes对象
try {
excelFile = new File(filePath)
is = new FileInputStream(excelFile)// 获取文件输入流
XSSFWorkbook workbook2007 = new XSSFWorkbook(is)// 创建Excel2007文件对象
XSSFSheet sheet = workbook2007.getSheetAt(0)// 取出第一个工作表,索引是0
// 开始循环遍历行,表头不处理,从1开始
for (int i = 1i <= sheet.getLastRowNum()i++) {
Notes = new Notes()// 实例化Notes对象
XSSFRow row = sheet.getRow(i)// 获取行对象
if (row == null) {// 如果为空,不处理
continue
}
// 循环遍历单元格
for (int j = 0j <row.getLastCellNum()j++) {
XSSFCell cell = row.getCell(j)// 获取单元格对象
if (cell == null) {// 单元格为空设置cellStr为空串
cellStr = ""
} else if (cell.getCellType() == XSSFCell.CELL_TYPE_BOOLEAN) {// 对布尔值的处理
cellStr = String.valueOf(cell.getBooleanCellValue())
} else if (cell.getCellType() == XSSFCell.CELL_TYPE_NUMERIC) {// 对数字值的处理
cellStr = cell.getNumericCellValue() + ""
} else {// 其余按照字符串处理
cellStr = cell.getStringCellValue()
}
// 下面按照数据出现位置封装到bean中
if (j == 0) {
Notes.setId(new Double(cellStr).intValue())
} else if (j == 1) {
Notes.setRuleId(new Double(cellStr).intValue())
} else if (j == 2) {
Notes.setMainId(new Double(cellStr).intValue())
}
}
NotesList.add(Notes)// 数据装入List
}
} catch (IOException e) {
e.printStackTrace()
} finally {// 关闭文件流
if (is != null) {
try {
is.close()
} catch (IOException e) {
e.printStackTrace()
}
}
}
return NotesList
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)