htool 读取csv 表格问价内容

话不多说 上代码


//        ExcelReader readerfankuidan = ExcelUtil
//                .getReader(FileUtil.file("C:\\Users\\pc\\Desktop\\1\\aa\\sql\\ods_yj_fkd.csv"), 0);
//        List<Map<String, Object>> fankuimap = readerfankuidan.readAll();
//        for (Map<String, Object> map : fankuimap) {
//            System.out.println(map.get("CJQK"));
//            break;
//        }

        CsvReader reader = CsvUtil.getReader();  // 进行创建csv读取器

        // 设置文件读取的分隔符
        reader.setFieldSeparator(','); // 默认为 , 可不进行设置

// 通过hutool的文件工具进行读取csv文件,并且指定文件的编码
        CsvData data = reader.read(FileUtil.file("C:\\Users\\pc\\Desktop\\1\\aa\\sql\\ods_yj_fkd.csv"));
        List<CsvRow> rows = data.getRows(); // 获取到csv文件的每一行的数据存放到list
//若有标题,则获取首行标题
        List<String> firstRawList = rows.get(0).getRawList();

//遍历行
        LambdaQueryWrapper<DisputeParty> qq = new LambdaQueryWrapper<>();
        qq.groupBy(DisputeParty::getPartyIdcard);
        List<DisputeParty> list = disputePartyService.list(qq);
        for (DisputeParty party : list) {
            if (StringUtils.isEmpty(party.getPartyIdcard())) {
                continue;
            }
            ArrayList<String> JQBHs = new ArrayList<>();
            for (CsvRow csvRow : rows) {
                    List<String> rawList = csvRow.getRawList(); // csv一行的数据存放到list中
                    String cjqk = rawList.get(4);
                    String JQBH = rawList.get(0);
                    if (cjqk.contains(party.getPartyIdcard())) {
                        if (!JQBHs.contains(JQBH)) {
                            JQBHs.add(JQBH);
                        }
                    }
            }
            if (JQBHs.size()>0) {
                party.setPartyIdcardNum(JQBHs.size());
                LambdaUpdateWrapper<DisputeParty> up = new LambdaUpdateWrapper<>();
                up.eq(DisputeParty::getId,party.getId());
                up.set(DisputeParty::getPartyIdcardNum,JQBHs.size());
                disputePartyMapper.update(null,up);
            }

        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值