博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读取excel文件内容代码
阅读量:6612 次
发布时间:2019-06-24

本文共 3314 字,大约阅读时间需要 11 分钟。

    最近工作需要批量添加映射excel文件字段的代码  于是通过读取excel2007实现了批量生成代码,记录下代码

   需要引入poi的jar包

import java.awt.List;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.util.ArrayList;import org.apache.poi.hssf.usermodel.HSSFCell;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 AutoMakeMap {    public static void readFromXLSX2007(String filePath) {          File excelFile = null;// Excel文件对象          InputStream is = null;// 输入流对象          String cellStr = null;// 单元格,最终按字符串处理            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 = 1; i <= sheet.getLastRowNum(); i++) {             //  for (int i = 0; i <= 490; i++) {                 XSSFRow row = sheet.getRow(i);// 获取行对象                  if (row == null) {
// 如果为空,不处理 continue; } // 循环遍历单元格 for (int j = 0; j < row.getLastCellNum(); j++) { // for (int j = 0; j < 2; j++) { XSSFCell cell = row.getCell(j);// 获取单元格对象 if (cell == null) {
// 单元格为空设置cellStr为空串 cellStr = ""; } else if (cell.getCellType() == HSSFCell.CELL_TYPE_BOOLEAN) {
// 对布尔值的处理 cellStr = String.valueOf(cell.getBooleanCellValue()); } else if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
// 对数字值的处理 cellStr = cell.getNumericCellValue() + ""; } else {
// 其余按照字符串处理 cellStr = cell.getStringCellValue(); } // 下面按照数据出现位置封装到bean中 if (j == 0) { System.out.print("commandMap[\"" + cellStr + "\"] = \""); } else if (j == 1) { System.out.println(cellStr + "\""); } } } } catch (IOException e) { e.printStackTrace(); } finally {
// 关闭文件流 if (is != null) { try { is.close(); } catch (IOException e) { e.printStackTrace(); } } } } public static void main(String[] args){ AutoMakeMap amm = new AutoMakeMap(); amm.readFromXLSX2007("D://aaa.xlsx"); }} 运行结果:

commandMap["command_01"] = "del-确认信息-在校学生-博士-4000以下-父母-建行-北京-申请成功"

commandMap["command_02"] = "del-确认信息-在校学生-硕士-4000以下-父母-建行-北京-申请成功"
commandMap["command_03"] = "del-确认信息-在校学生-本科-4000以下-父母-建行-北京-申请成功"
commandMap["command_04"] = "del-确认信息-在校学生-专科-4000以下-父母-建行-北京-申请成功"
commandMap["command_05"] = "del-确认信息-在校学生-高中以下-4000以下-父母-建行-北京-申请成功"
commandMap["command_06"] = "del-确认信息-在校学生-博士-4000-6000-父母-建行-北京-申请成功"
commandMap["command_07"] = "del-确认信息-在校学生-博士-6000~8000-父母-建行-北京-申请成功"

 

转载地址:http://ekaso.baihongyu.com/

你可能感兴趣的文章
How to: Set Properties of Web Application Projects
查看>>
代码小细节
查看>>
perl5 第六章 模式匹配
查看>>
注入技巧
查看>>
人脸数据库汇总
查看>>
必须使用"角色管理工具"安装或配置microsoft.net framework 3.5
查看>>
FPGA编程—组合逻辑编码器等verilog实现
查看>>
git diff ^M的消除
查看>>
通杀所有系统的硬件漏洞?聊一聊Drammer,Android上的RowHammer攻击
查看>>
Java 8 Stream API详解--转
查看>>
SpringBoot集成jsp(附源码)+遇到的坑
查看>>
Java Thread 的 sleep() 和 wait() 的区别
查看>>
C# 验证给定的字符串形式的日期是否合法
查看>>
基于资源的权限系统-设计思路
查看>>
算法之美--2.2 Array
查看>>
Chapter 2 Open Book——25
查看>>
Scrapy创建zentao爬虫
查看>>
10个常见的Node.js面试题
查看>>
指针与地址的区别【转】
查看>>
利用深度学习网络自动给图像上色的文章和相关工程实现
查看>>