读取excel,通过键值对的方式存入HashMap里

qq_37525300 2017-05-19 04:51:19

package util;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;

public class Util {
public static List<HashMap<String, Object>> readExcel(File file) throws BiffException, IOException {
List<HashMap<String, Object>> dataList = new ArrayList<>();
// 创建一个list 用来存储读取的内容
Workbook rwb = null;
Cell cell = null;
// 创建输入流
InputStream stream = new FileInputStream("C:/Users/chen/Desktop/object/xxx.xls");
// 获取Excel文件对象
rwb = Workbook.getWorkbook(stream);
// 获取文件的指定工作表默认的第一个
Sheet sheet = rwb.getSheet(0);
// 行数
for (int i = 0 ; i < sheet.getRows(); i++) {
HashMap<String, Object> line = new HashMap<String, Object>();
// 创建一个数组用来存储每一列的值
String[] str = new String[sheet.getColumns()];
// 列数
for (int j = 0; j < sheet.getColumns(); j++) {
// 获取第i行,第j列的值
cell = sheet.getCell(j, i);
str[j] = cell.getContents();
String value = str[j];
line.put(key, value);
}
dataList.add(line);
System.out.println(line.values());
// System.out.println(str[2]);
}
return dataList;
}
public static void main(String[] args) throws BiffException, IOException {
File file = new File("C:/Users/chen/Desktop/object/xxx.xls");
Util.readExcel(file);
}
}

求大神完善一下
...全文
909 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
HinanaiTenshi 2017-05-19
  • 打赏
  • 举报
回复
这数据用hashmap是放不下的,毕竟一个key一个val。试试multimap吧

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧