中易网

POI 实现导入Excel 导入问题

答案:2  悬赏:40  
解决时间 2021-02-22 21:28
public void resultSetFromExcel_real(String url, String filename,String psno) throws IOException{

RSDB rsdb=new RSDB();

HSSFWorkbook workbook = null;
FileInputStream fin = null;
FileOutputStream fileOut = null;
File file = new File(url+filename);
fin = new FileInputStream(file);
workbook = new HSSFWorkbook(fin);
HSSFSheet sheet= workbook.getSheetAt(0);
HSSFRow row = null;
HSSFCell cell = null;
List arr=new ArrayList();

HSSFFormulaEvaluator evaluator = new HSSFFormulaEvaluator(workbook) ;

for(int i = 2; i <=sheet.getLastRowNum(); i++) {
Map map=new HashMap();
for(int j = 0; j <=13; j++){

row = sheet.getRow(i);
cell = row.getCell(j);
if(cell!=null && cell.toString().length()!=0){
//解析Excel 数据放入map
arr.add(map);
}
///====导入数据库=====
for(int j = 0; j String sno="";
HashMap map=new HashMap();
Map map1=(HashMap)arr.get(j);

try {
sno = rsdb.getString("select F_SNO('HR_REALWELFARE_C') from dual");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(map1.get(3)==null || map1.get(3)=="0"){continue;}
map.put("SNO", sno);
map.put("PSNO", psno);
map.put("ORDERNO", map1.get(0).toString().trim().replace(".0",""));
map.put("ROOTDEPNAME", map1.get(1).toString().trim());
String workno=map1.get(2).toString();
map.put("WORKNO", workno);
//目前 想解决的问题是:
如果WORKNO 相等 上面的 SNO PSNO...不变
要将 下面的 EMPANNUITY_BU ,PROVIDEINSURE_BU ...这些数据累加
怎么处理。。。。。、。、、、、,、?

map.put("EMPANNUITY_BU", map1.get(9).toString().trim().replace(".0",""));
map.put("PROVIDEINSURE_BU", map1.get(10).toString());
map.put("LOSEJOB_BU", map1.get(11).toString());
map.put("MEDICALINSURE_BU", map1.get(12).toString());
map.put("HOUSINGFUND_BU", map1.get(13).toString().trim().replace(".0",""));
// System.out.print(map1.get(8));
try {
rsdb.doInsert("HR_REALWELFARE_C",map);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}

意思讲1422 累加合并成一个人 ,把后面的数值加一起导入数据库



最佳答案
对list进行排序,然后比较WORKNO是否相等,进行累计相加......
全部回答
要统一用 simpledateformat sdf = new simpledateformat(format);处理成yyyy-mm-dd才可以导入到excel
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
网购市场害的太多商铺
博奥汽车服务中心地址在什么地方,想过去办事
九州文化礼品地址有知道的么?有点事想过去
我的车是09款荣威550为什么现在换的门板卡扣
金庸群侠传x1.0怎么触发第二次主线
高州市深镇农业技术推广站地址在哪,我要去那
爱心天使母婴护理在哪里啊,我有事要去这个地
楼梯板钢筋可以断开搭接吗?
激活windows10时替换密钥后输入如下命令:slm
董集镇东方肉牛合作社地址有知道的么?有点事
孙叔敖杀两头蛇恐中的恐去母而死也的去是什么
温州烫剪自由女神和自然发艺哪个好?
龙山雅苑自行车租赁点在什么地方啊,我要过去
歌词里面有a oh oh oh oh oh的歌叫什么名字
如果在qq上惹了同班的人,要打你怎么办
推荐资讯
景德镇市体育总会(新村东路)地址在什么地方,
全职猎人 奇牙的新绝招叫什么 强到什么地步
寻乌县隆丰农资经营部怎么去啊,有知道地址的
烤羊肉串的腌料
潘记鲜肉店我想知道这个在什么地方
老人手机电池有电,为什么还经常关机?
有没有人出国只是为了逃避
鞋子上那晒黄的东西要怎么去掉啊
求定积分 如图 第4题
澳大利亚和新加坡哪个好移民?
大德生药店怎么去啊,有知道地址的么
丽颖食杂店在哪里啊,我有事要去这个地方
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?