待到风云起* 2023-04-03 09:06 采纳率: 28.6%
浏览 37
已结题

java统计excel表格中的人数

Java如何统计excel表格最后两列的人数,并且没有相同的人数

  • 写回答

3条回答 默认 最新

  • 沐阳gg 2023-04-03 10:33
    关注

    要统计Excel表格中最后两列的人数,并且保证没有相同的人数,可以使用Java中的Apache POI库来读取Excel文件并实现该功能,举个栗子

    import java.io.FileInputStream;
    import java.io.IOException;
    import java.util.HashSet;
    import java.util.Set;
    
    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.ss.usermodel.Row;
    import org.apache.poi.ss.usermodel.Sheet;
    import org.apache.poi.ss.usermodel.Workbook;
    import org.apache.poi.ss.usermodel.WorkbookFactory;
    
    public class ExcelReader {
        public static void main(String[] args) throws IOException {
            String filename = "test.xlsx"; // Excel文件名
            FileInputStream fis = new FileInputStream(filename);
            Workbook wb = WorkbookFactory.create(fis);
            Sheet sheet = wb.getSheetAt(0); // 获取第一个Sheet
    
            Set<String> lastTwoCols = new HashSet<>(); // 用来存储最后两列的人数
            for (Row row : sheet) {
                Cell cell1 = row.getCell(row.getLastCellNum() - 2); // 获取倒数第二列
                Cell cell2 = row.getCell(row.getLastCellNum() - 1); // 获取最后一列
                String value1 = cell1.getStringCellValue().trim(); // 获取单元格内容并去掉空格
                String value2 = cell2.getStringCellValue().trim(); // 获取单元格内容并去掉空格
                String lastTwo = value1 + "_" + value2; // 合并最后两列
                lastTwoCols.add(lastTwo); // 加入Set集合
            }
    
            int count = lastTwoCols.size(); // 统计不同的人数
            System.out.println("不同的人数:" + count);
        }
    }
    上述代码首先读取Excel文件,然后遍历第一个Sheet中的每一行,获取最后两列的内容,并将其合并成一个字符串,加入到一个Set集合中。由于Set集合的特点是不允许重复元素,因此最后Set集合的大小就是最后两列的不同人数。
    
    回答不易,望采纳!😘
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月11日
  • 已采纳回答 4月3日
  • 创建了问题 4月3日

悬赏问题

  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了