当前位置:首页 » 编程语言 » javaexcel列

javaexcel列

发布时间: 2022-12-22 20:02:58

java POI读取Excel的时候怎么按列读取

按列读取的方法:
String pathname = "E:\\files\\title.xlsx";
File file = new File(pathname);
InputStream in = new FileInputStream(file);
//得到整个excel对象
XSSFWorkbook excel = new XSSFWorkbook(in);
//获取整个excel有多少个sheet
int sheets = excel.getNumberOfSheets();
//便利第一个sheet
Map<String,String> colMap = new HashMap<String, String>();
for(int i = 0 ; i < sheets ; i++ ){
XSSFSheet sheet = excel.getSheetAt(i);
if(sheet == null){
continue;
}
int mergedRegions = sheet.getNumMergedRegions();
XSSFRow row2 = sheet.getRow(0);
Map<Integer,String> category = new HashMap<Integer, String>();
for(int j = 0 ; j < mergedRegions; j++ ){
CellRangeAddress rangeAddress = sheet.getMergedRegion(j);
int firstRow = rangeAddress.getFirstColumn();
int lastRow = rangeAddress.getLastColumn();
category.put(rangeAddress.getFirstColumn(), rangeAddress.getLastColumn()+"-"+row2.getCell(firstRow).toString());
}
//便利每一行
for( int rowNum = 1 ; rowNum <= sheet.getLastRowNum() ; rowNum++ ){
System.out.println();
XSSFRow row = sheet.getRow(rowNum);
if(row == null){
continue;
}
short lastCellNum = row.getLastCellNum();
String cate = "";
Integer maxIndex = 0;
for( int col = row.getFirstCellNum() ; col < lastCellNum ; col++ ){
XSSFCell cell = row.getCell(col);
if(cell == null ){
continue;
}
if("".equals(cell.toString())){
continue;
}
int columnIndex = cell.getColumnIndex();
String string = category.get(columnIndex);
if(string != null && !string.equals("")){
String[] split = string.split("-");
cate = split[1];
maxIndex = Integer.parseInt(split[0]);
System.out.println(cate+"<-->"+cell.toString());
}else {
//如果当前便利的列编号小于等于合并单元格的结束,说明分类还是上面的分类名称
if(columnIndex<=maxIndex){
System.out.println(cate+"<-->"+cell.toString());
}else {
System.out.println("分类未知"+"<-->"+cell.toString());
}
}
}
}
}
}

Ⅱ java 如何一列一列读取excel数据。网上好多资料只是读取前两三行的例子,我的是读取一个列下所有的行内容

1、一般java读取excel数据都是按行读取,网上的资料都是例子,谁也不会拿个几千行的excel文件做测试;
2、既然你的文件只有一列,即使是按行读取也没有任何问题,只要按行读取,每行只取你需要的那一列就行了,非常的简单。
3、主要不是列的问题,是你根本不会java读取excel文件,网上那么多的例子也没看懂。

热点内容
选举源码 发布:2025-05-16 09:58:59 浏览:747
超级访问陈小春应采儿 发布:2025-05-16 09:43:29 浏览:478
缓存视频合并工具最新版 发布:2025-05-16 09:35:03 浏览:194
花雨庭服务器ip地址和端口 发布:2025-05-16 09:34:58 浏览:239
同时修改多台服务器管理地址工具 发布:2025-05-16 09:20:36 浏览:421
什么配置就能玩地平线 发布:2025-05-16 09:13:46 浏览:82
python旋转图片 发布:2025-05-16 09:13:40 浏览:638
少女前线防检测脚本 发布:2025-05-16 08:59:07 浏览:728
编译器对系统的依赖 发布:2025-05-16 08:37:29 浏览:711
javamap数组 发布:2025-05-16 08:37:28 浏览:451