public Map<Integer, String[]> toMap(String path) {
Map<Integer,String[]> map = null;
try {
Workbook wb = new HSSFWorkbook(new FileInputStream(new File(path)));
//对excel文件的处理
Sheet st = wb.getSheetAt(0);
if(st != null){
map = new HashMap<Integer, String[]>(st.getLastRowNum());
for(int i = 0;i < st.getLastRowNum();i++){
//行
Row row = st.getRow(i);
if(row != null){
int rows = row.getLastCellNum();
String[] strs = null;
if(rows > 0){
strs = new String[rows];
for(int j = 0;j < rows;j++){
//列
Cell c = row.getCell(j);
strs[j] = c.toString();
if(c.getCellType() == Cell.CELL_TYPE_STRING){
strs[j] = c.toString();
}else if(c.getCellType() == Cell.CELL_TYPE_NUMERIC){
double d = c.getNumericCellValue();
String s = String.valueOf(d);
s = s.substring(0, s.indexOf("E")).replace(".", "");
strs[j] = s;
}
}
}
map.put(i, strs);
}
}
}
} catch (FileNotFoundException e) {
System.out.println("文件未找到.." + e.getClass().getName() + "\t 信息:" + e.getMessage());
} catch (IOException e) {
System.out.println("Io异常:" + e.getClass().getName() + "\t 信息:" + e.getMessage());
}
return map;
}
Map<Integer,String[]> map = null;
try {
Workbook wb = new HSSFWorkbook(new FileInputStream(new File(path)));
//对excel文件的处理
Sheet st = wb.getSheetAt(0);
if(st != null){
map = new HashMap<Integer, String[]>(st.getLastRowNum());
for(int i = 0;i < st.getLastRowNum();i++){
//行
Row row = st.getRow(i);
if(row != null){
int rows = row.getLastCellNum();
String[] strs = null;
if(rows > 0){
strs = new String[rows];
for(int j = 0;j < rows;j++){
//列
Cell c = row.getCell(j);
strs[j] = c.toString();
if(c.getCellType() == Cell.CELL_TYPE_STRING){
strs[j] = c.toString();
}else if(c.getCellType() == Cell.CELL_TYPE_NUMERIC){
double d = c.getNumericCellValue();
String s = String.valueOf(d);
s = s.substring(0, s.indexOf("E")).replace(".", "");
strs[j] = s;
}
}
}
map.put(i, strs);
}
}
}
} catch (FileNotFoundException e) {
System.out.println("文件未找到.." + e.getClass().getName() + "\t 信息:" + e.getMessage());
} catch (IOException e) {
System.out.println("Io异常:" + e.getClass().getName() + "\t 信息:" + e.getMessage());
}
return map;
}
ps:使用poi工具进行解析的
相关推荐
一个读取Excel文档,将数据存入map集合的方法
解析excel数据,支持xls、xlsx (03、07版本)excel 数据读取,数据转换成map。实测,54万数据解析完成8-20秒内(远古版i5、16G内存台式机)。
JAVA读取excel文件源代码。可以传入文件的 开始行,结束行,sheet页名称,开始列,结束列,读取文件,返回List<Map, Object>>类型和List;Object>>类型,List<Map, Object>>需要传入对应的key字符串,然后用...
// 将从Excel表格读取到的数据与配置文件筛选成可以插入到数据库的数据 public List, Object>> parseExcelData( List, String>> excelDataMap, Map, List<ExcelMap>> dbfield) { List, Object>> list = new ...
JxlExcel 是基于jxl封装的java excel读写库,特性如下:可以像读写文件一样方便的读取数据和写入数据数据支持数组、map、bean三种方式支持xml配置excel模板如何使用?模板定义在类路径下新建一个jxl-excel.xml的模板...
解析通过MutilpartFile导入的Excel并解析里面数据,先判断文件的类型(excel处理有两种此处为两种通用)是.xls/.xlsx,采用Apache的POI的API来操作Excel,读取内容后保存到List中,再将List转Json(使用Linked,增删快...
不管是poi还是jxl都无法根据列名取数据,简单的合并Excel,如果每个Excel里每列不一定是按顺序来的,或者么些列有缺失,就不好办了,这个合并方式,是依照JDBC读取数据库的方式,把Excel看成是一个数据库表,返回List<Map<>>...
Java代码从Excel表(student)中获取所有学生信息,读取之后使用stream方式完成一下 1、获取每一个班级的学生信息并打印输出, 使用map的方式存储 2、输出学生中java 前三名,Linux前三名,总成绩前三名(不考虑相同 ...
读写Blob数据,blob数据常以二进制形式存储比较大的文件数据,如图片、视频文件等,本文介绍如何往数据库中读写blob数据,BlobData.java; 使用ResultSet更新数据库,UpdateWithResultSet.java; 使用RowSet,....
EasyExcel重写了POI对07Excel的解析,解决一部分了内存消耗特大的问题03版本任依赖POI的SAX模式 EasyExcel特点 1.数据模型层面进行了封装,...5.读写Excel,数据在excel文件,程序<实体类,MAP>两个载体之间 互相流转
阿里巴巴easyExcel实现大数据导出!!
可将List导出成Excel,或读取Excel成List、Map,Object>,很方便,可配置日期格式,可识别数字,经过企业级测试有效. <groupId>org.apache.poi <artifactId>poi <version>3.17 <groupId>org.apache.poi ...
此文件为多个sheet的excel导入,可以根据文件后缀,自动适应上传文件的版本,返回为list或者map,支持2003 版本以及2007版本的excel
ExcelParser 该项目包含用于读取Microsoft Excel文件的自定义解析器。 它接受“ xls”和“ xlsx”文件扩展名。... 该程序的输出是一个Java Map,其中包含行数据,每个数据都映射到其相应的column属性。
最好用的excel导入导出工具for Java(兼容2003和2007) 读取excel为List<Map,Object>>方便转换,excel2db,db2excel
实例245 读取XML文件属性 310 第3篇 窗体与控件应用 第11章 窗体设计 314 11.1 设置窗体位置 315 实例246 控制窗体加载时的位置 315 实例247 设置窗体在屏幕中的位置 315 实例248 从上次关闭位置启动窗体 316 实例...
12 从键盘接收数据并输出到文件 7. 13 使用StreamTokenizer统计文件的字符数 7. 14 序列化和反序列化对象 7. 15 控制对象的序列化和反序列 7. 16 读jar包的资源文件 7. 17 用Zip格式压缩和解...
实例147 随机读写Java类文件 221 第3篇 Java面向对象编程 第8章 面向对象(教学视频:72分钟) 226 8.1 类 226 实例148 简单的通讯录类 226 实例149 简单的长度单位转换类 227 实例150 ...