"""JSONObject json = new JSONObject(jsonstr);\nSystem.out.println(json);\nJSONArray data = json.getJSONArray("data");\nint length = data.length();\n\nHSSFPatriarch patriarch = (HSSFPatriarch) sheet.createDrawingPatriarch();\n\nfor(int i=0; i<length;i++)\n{\n\tr=sheet.createRow(i+rowcount);\n\tr.setHeight((short)(256*1.5));\n\n\tint cellNum = 0;\n\tJSONObject temp = new JSONObject(data.optString(i));\n\tfor(cellNum=0;cellNum<displayKeys.length+2;cellNum++)\n\t{\n\t\tString value = temp.optString(dataKeys[cellNum]);\n\t\tCellUtil.createCell(r, cellNum, value);\n\t\t\n\t\tif(dataKeys[cellNum].equals("images"))\n\t\t{\n\t\t\tURL imageUrl = new URL(value);\n\t\t\tInputStream imageStream = imageUrl.openStream();\n\t\t\tbyte[] byteArray = IOUtils.toByteArray(imageStream);\n\t\t\tint pictureIndex = wb.addPicture(byteArray, HSSFWorkbook.PICTURE_TYPE_JPEG); // byteArray为图片的字节数组\n\t\t\tHSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 0, 0, (short) cellNum, i+rowcount, (short) (cellNum+1), i+rowcount+1);\n\t\t\tHSSFPicture picture = patriarch.createPicture(anchor, pictureIndex);\n\t\t\tpicture.resize(); // 调整图片大小\n\t\t}\n\t\t\n\t\t\n\t}\n}""". 这段代码假设JSON数据中"images"字段包含三张图片的URL。它从URL获取每个图片,将其转换为字节数组,并使用addPicture方法将其添加到工作簿中。然后,它创建一个客户端锚点,并使用它使用createPicture方法在工作表中创建图片。最后,它使用resize方法调整图片大小以适应单元格。

将图片存入表格内容 - 使用Java和Apache POI

原文地址: https://www.cveoy.top/t/topic/qC83 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录