利用java获取excle数据

来源:互联网 发布:人工智能产品 编辑:程序博客网 时间:2024/05/17 22:22

环境:maven工程


效果展示:

excle文件 



控制台输出:




1.在pom.xml配置文件中加入以下代码

<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.14-beta1</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.14-beta1</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.14-beta1</version>
</dependency>

2.业务代码
import java.io.FileInputStream;
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;
public class ToMysqlController {
public static void main(String[] args) {
try {
// 创建对Excel工作簿文件的引用,支持xls和xlsx格式
XSSFWorkbook wookbook = new XSSFWorkbook(new FileInputStream("c://excel.xlsx"));
// 在Excel文档中,第一张工作表的缺省索引是0
// 其语句为:HSSFSheet sheet = workbook.getSheetAt(0);­
XSSFSheet sheet = wookbook.getSheet("Sheet1");
   
//获取到Excel文件中的所有行数­
int rows = sheet.getPhysicalNumberOfRows();

//遍历行
for (int i = 0; i < rows; i++) {
// 读取左上端单元格­
XSSFRow row = sheet.getRow(i);
                  if (row != null) {
                      //获取到Excel文件中的所有的列
                   
                      int cells = row.getPhysicalNumberOfCells();
                        String value = "";     
                        //遍历列
                        for (int j = 0; j < cells; j++) {
                              //获取到列的值
                              XSSFCell cell = row.getCell((short) j);
                              if (cell != null) {
                            switch (cell.getCellType()) {
                             case XSSFCell.CELL_TYPE_FORMULA:
                            break;
                                      case XSSFCell.CELL_TYPE_NUMERIC:
                                            value += cell.getNumericCellValue() + ",";        
                                            break;  
                                      case XSSFCell.CELL_TYPE_STRING:
                                             value += cell.getStringCellValue() + ",";
                                              break;
                                   
                        String value = "";     
                        //遍历列
                        for (int j = 0; j < cells; j++) {
                              //获取到列的值
                              XSSFCell cell = row.getCell((short) j);
                              if (cell != null) {
                           switch (cell.getCellType()) {
                            case XSSFCell.CELL_TYPE_FORMULA:
                           break;
                                      case XSSFCell.CELL_TYPE_NUMERIC:
                                            value += cell.getNumericCellValue() + ",";        
                                           break;  
                                      case XSSFCell.CELL_TYPE_STRING:
                                             value += cell.getStringCellValue() + ",";
                                             break;
                                   default:
                                         value += "0";
                                   
                                         value += "0";
                                   break;
                            }
                           
                           }
                            }
                         }  
                        
                      //每行的数据
                        String[] val = value.split(",");
                        for (int j = 0; j < val.length; j++) {
                        System.out.print(val[j] + "  ");
}
                     }
                  System.out.println();
               }
} catch (Exception e) {
e.printStackTrace();

}
}
                         }  
                        
                        String[] val = value.split(",");
                        for (String string : val) {
System.out.println(string);
}
           }
                 }
} catch (Exception e) {
e.printStackTrace();
}
}








原创粉丝点击