Java 导入excel

谁践踏了优雅 2022-07-20 16:26 246阅读 0赞
  1. package com.wt.wkbox.common;
  2. import java.io.File;
  3. import java.io.FileInputStream;
  4. import java.io.FileNotFoundException;
  5. import java.io.IOException;
  6. import java.math.BigDecimal;
  7. import java.util.ArrayList;
  8. import java.util.List;
  9. import net.paoding.rose.web.Invocation;
  10. import org.apache.commons.lang.StringUtils;
  11. import org.apache.poi.hssf.usermodel.HSSFCell;
  12. import org.apache.poi.hssf.usermodel.HSSFRow;
  13. import org.apache.poi.hssf.usermodel.HSSFSheet;
  14. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  15. import com.wt.wkbox.common.util.IdTool;
  16. import com.wt.wkbox.model.basic.biz.WkboxMoneyConsumeView;
  17. import com.wt.wkbox.model.userManager.WkboxUser;
  18. /**
  19. * ClassName:Test <br/>
  20. * Function: ADD FUNCTION. <br/>
  21. * Reason: ADD REASON. <br/>
  22. * Date: 2016年7月9日 下午2:26:13 <br/>
  23. * @author wpengfei
  24. * @version
  25. * @since JDK 1.6
  26. * @see
  27. */
  28. public class Test {
  29. public static List<WkboxMoneyConsumeView> getStudentFromExcel(String excelUrl) {
  30. excelUrl = "E:\\wkBox\\web\\wkBox-mobile-web\\trunk\\wkBox-web\\src\\main\\webapp\\upload\\1468043253038.xls";
  31. List<WkboxMoneyConsumeView> list=new ArrayList<WkboxMoneyConsumeView>();
  32. try {
  33. //把一张xls的数据表读到wb里
  34. HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(new File(excelUrl)));
  35. //读取第一页,一般一个excel文件会有三个工作表,这里获取第一个工作表来进行操作
  36. HSSFSheet sheet = wb.getSheetAt(0);
  37. //循环遍历表sheet.getLastRowNum()是获取一个表最后一条记录的记录号,
  38. //如果总共有3条记录,那获取到的最后记录号就为2,因为是从0开始的
  39. for(int j=1;j<sheet.getLastRowNum()+1;j++) {
  40. //创建一个行对象
  41. HSSFRow row = sheet.getRow(j);
  42. WkboxMoneyConsumeView consume = new WkboxMoneyConsumeView();
  43. //把一行里的每一个字段遍历出来
  44. for(int i=0;i<row.getLastCellNum();i++) {
  45. //创建一个行里的一个字段的对象,也就是获取到的一个单元格中的值
  46. HSSFCell cell = row.getCell(i);
  47. if(cell==null ){
  48. continue;
  49. }
  50. //在这里我们就可以做很多自己想做的操作了,比如往数据库中添加数据等
  51. if(i == 0){
  52. consume.setId(getValue(cell));
  53. }else if(i == 1 ){
  54. }else if(i == 2){
  55. }else if(i == 3){
  56. consume.setSchoolName(getValue(cell));
  57. }else if(i == 4){
  58. }else if(i == 5){
  59. }else if(i == 6){
  60. }else if(i == 7){
  61. }
  62. }
  63. list.add(consume);
  64. }
  65. } catch (FileNotFoundException e) {
  66. e.printStackTrace();
  67. } catch (IOException e) {
  68. e.printStackTrace();
  69. }finally{
  70. File file=new File(excelUrl);
  71. // file.delete();
  72. }
  73. return list;
  74. }
  75. public static void main(String[] args) {
  76. List<WkboxMoneyConsumeView> list = getStudentFromExcel("1234");
  77. System.out.println(list.size());
  78. for(WkboxMoneyConsumeView consume : list){
  79. System.out.println(consume.getId()+": "+consume.getSchoolName());
  80. }
  81. }
  82. @SuppressWarnings("static-access")
  83. private static String getValue(HSSFCell hssfCell) {
  84. if (hssfCell.getCellType() == hssfCell.CELL_TYPE_BOOLEAN) {
  85. return String.valueOf(hssfCell.getBooleanCellValue());
  86. } else if (hssfCell.getCellType() == hssfCell.CELL_TYPE_NUMERIC) {
  87. return String.valueOf(hssfCell.getNumericCellValue());
  88. } else {
  89. return String.valueOf(hssfCell.getStringCellValue());
  90. }
  91. }
  92. }

发表评论

表情:
评论列表 (有 0 条评论,246人围观)

还没有评论,来说两句吧...

相关阅读

    相关 java实现Excel导入

    需求背景:项目中存在导入Excel文件,将其中的数据保存到数据库,在页面显示保存的列表 一:在pom.xml文件中引入依赖 <!-- excel -->