From e2977d55d9338387a13478713a1f90fa3de3ae11 Mon Sep 17 00:00:00 2001 From: whycxzp <perryhsu@163.com> Date: 星期五, 11 八月 2023 11:16:39 +0800 Subject: [PATCH] 图片集合非空校验 --- src/main/java/com/whyc/service/ProductService.java | 50 ++++++++++++++++++++++++++++---------------------- 1 files changed, 28 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/whyc/service/ProductService.java b/src/main/java/com/whyc/service/ProductService.java index d2076b0..6b813f1 100644 --- a/src/main/java/com/whyc/service/ProductService.java +++ b/src/main/java/com/whyc/service/ProductService.java @@ -182,32 +182,38 @@ //瀛樺偍鍥剧墖淇℃伅鍙婃墍鍦ㄥ垎椤� Map<Integer,PictureData> pictureDataMap = new HashMap<>(); if(excelType == 1){ //.xls - List<HSSFShape> children = ((HSSFSheet) sheet).getDrawingPatriarch().getChildren(); - for (HSSFShape child : children) { - HSSFPicture picture = (HSSFPicture)child; - HSSFPictureData pictureData = picture.getPictureData(); - HSSFClientAnchor anchor = (HSSFClientAnchor) child.getAnchor(); - //琛�,涓嶈兘璺ㄨ; - int row1 = anchor.getRow1(); - int row2 = anchor.getRow2(); - if(row1 == row2){ - //涓嶈法琛�,鏈夋晥 - pictureDataMap.put(row1,pictureData); + HSSFPatriarch drawingPatriarch = ((HSSFSheet) sheet).getDrawingPatriarch(); + if(drawingPatriarch!=null) { + List<HSSFShape> children = drawingPatriarch.getChildren(); + for (HSSFShape child : children) { + HSSFPicture picture = (HSSFPicture) child; + HSSFPictureData pictureData = picture.getPictureData(); + HSSFClientAnchor anchor = (HSSFClientAnchor) child.getAnchor(); + //琛�,涓嶈兘璺ㄨ; + int row1 = anchor.getRow1(); + int row2 = anchor.getRow2(); + if (row1 == row2) { + //涓嶈法琛�,鏈夋晥 + pictureDataMap.put(row1, pictureData); + } } } } else if(excelType == 2){ //.xlsx - List<XSSFShape> children = ((XSSFSheet) sheet).getDrawingPatriarch().getShapes(); - for (XSSFShape child : children) { - XSSFPicture picture = (XSSFPicture)child; - XSSFPictureData pictureData = picture.getPictureData(); - XSSFClientAnchor anchor = (XSSFClientAnchor) child.getAnchor(); - //琛�,涓嶈兘璺ㄨ; - int row1 = anchor.getRow1(); - int row2 = anchor.getRow2(); - if(row1 == row2){ - //涓嶈法琛�,鏈夋晥 - pictureDataMap.put(row1,pictureData); + XSSFDrawing drawingPatriarch = ((XSSFSheet) sheet).getDrawingPatriarch(); + if(drawingPatriarch!=null) { + List<XSSFShape> children = drawingPatriarch.getShapes(); + for (XSSFShape child : children) { + XSSFPicture picture = (XSSFPicture) child; + XSSFPictureData pictureData = picture.getPictureData(); + XSSFClientAnchor anchor = (XSSFClientAnchor) child.getAnchor(); + //琛�,涓嶈兘璺ㄨ; + int row1 = anchor.getRow1(); + int row2 = anchor.getRow2(); + if (row1 == row2) { + //涓嶈法琛�,鏈夋晥 + pictureDataMap.put(row1, pictureData); + } } } } -- Gitblit v1.9.1