当前位置: 首页 > wzjs >正文

专业做股权众筹的网站上海优化外包

专业做股权众筹的网站,上海优化外包,襄阳网站建设价格低,建设手机网站经验分享解析excel中的图片 前言一、pom依赖二、使用步骤1.示例数据2.代码如下(示例): 总结 前言 初始化数据是,需要将excel中的数据解析并插入数据库。 但是某几列存放的是图片,这时候怎么办呢。 主要解决的是:获…

解析excel中的图片

  • 前言
  • 一、pom依赖
  • 二、使用步骤
    • 1.示例数据
    • 2.代码如下(示例):
  • 总结

前言

初始化数据是,需要将excel中的数据解析并插入数据库。
但是某几列存放的是图片,这时候怎么办呢。

主要解决的是:获取excel中指定行列的图片字节。


一、pom依赖

解析文件的依赖

        <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.11.0</version></dependency>

如果执行接口报错的话,可能是poi和log4j有冲突,log4j换成下面的依赖

<dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-api</artifactId><version>2.17.1</version>
</dependency>
<dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.17.1</version>
</dependency>

二、使用步骤

1.示例数据

excel的M、N列是图片,对应index为:12、13
在这里插入图片描述

2.代码如下(示例):

import lombok.extern.slf4j.Slf4j;
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.xssf.usermodel.XSSFClientAnchor;
import org.apache.poi.xssf.usermodel.XSSFDrawing;
import org.apache.poi.xssf.usermodel.XSSFPicture;
import org.apache.poi.xssf.usermodel.XSSFPictureData;
import org.apache.poi.xssf.usermodel.XSSFShape;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.multipart.MultipartFile;@GetMapping(value = "/uploadPointFile")public List<String> uploadPointFile(@RequestParam(value = "file") MultipartFile file) throws Exception {LinkedList<String> insertSql = new LinkedList<>();String OG_POINT = "INSERT INTO `table_one`(`id`, `city`, `district`, `street`, `community`, `name`, `address`, `deleted`, `gaoDe_log`, `gaoDe_lat`, `label`, `contact_user`, `contact_mobile`,  `remark`,`link_path`, `create_community`, `created_time`, `updated_time`) VALUES ('%s',  '%s', '%s', '%s', '%s', '%s','%s', 0, '%s', '%s', '%s', '%s', '%s', '%s','%s', '510121',now(),now());";String OGP_PICTURE = "INSERT INTO `table_two`(`id`, `point_id`, `picture_url`, `deleted`, `created_time`, `updated_time`) VALUES ('%s', '%s', 'https://xxxxx/x/%s', 0,now(),now());";InputStream inputStream = file.getInputStream();Workbook workbook = new XSSFWorkbook(inputStream);// 获取第一个工作表Sheet sheet = workbook.getSheetAt(0);for (Row row : sheet) {if (row.getRowNum() == 0) {continue; // 跳过表头}String uuid = UUID.randomUUID().toString().replaceAll("-", "");// 获取前两列内容作为图片名String ogSql = String.format(OG_POINT, uuid, row.getCell(0).toString().substring(0, 4), row.getCell(0).toString(), row.getCell(1).toString(), row.getCell(2).toString(), row.getCell(3).toString(), row.getCell(4).toString(), row.getCell(5).toString(), row.getCell(6).toString(), row.getCell(7).toString(), row.getCell(8).toString(), row.getCell(9).toString(), row.getCell(10).toString(), row.getCell(11).toString());//打印point 的sqlinsertSql.add(ogSql);// 获取工作表中的绘图对象XSSFDrawing drawing = (XSSFDrawing) sheet.getDrawingPatriarch();if (drawing == null) {continue; // 如果没有绘图对象则跳过}// 获取所有形状List<XSSFShape> shapes = drawing.getShapes();for (XSSFShape shape : shapes) {if (shape instanceof XSSFPicture) {XSSFPicture picture = (XSSFPicture) shape;XSSFClientAnchor anchor = (XSSFClientAnchor) picture.getAnchor();// 检查图片是否在目标单元格中if (row.getRowNum() == anchor.getRow1() && (anchor.getCol1() == 12 || anchor.getCol1() == 13)) {// 获取图片数据XSSFPictureData pictureData = picture.getPictureData();byte[] pictureBytes = pictureData.getData();String fileExtension = pictureData.suggestFileExtension();//调用文件上传接口String pictureUrl = "xxxxxxx";String pictureUuid = UUID.randomUUID().toString().replaceAll("-", "");String pictureSql = String.format(OGP_PICTURE, pictureUuid, uuid, pictureUrl);insertSql.add(pictureSql);}}}}return insertSql;}

总结

没有总结,歪比巴卜

http://www.dtcms.com/wzjs/123664.html

相关文章:

  • 营销型网站建设思路西安百度seo推广电话
  • 做淘宝客最大的网站是叫什么名字网络培训机构
  • 桐庐做网站西安关键词网站排名
  • 阳泉推广型网站开发企业网络营销策略分析
  • 资源下载WordPress主题个人seo怎么赚钱
  • 深圳网站建设 培训郑州seo网站有优化
  • 庆阳市西峰区做网站深圳防疫措施优化
  • 做抛物线的网站seo关键字优化价格
  • 深圳低价做网站排名查询系统
  • 网站制图软件网站排名优化培训哪家好
  • 怎么把网页里的视频提取出来百度seo学院
  • 可信网站验证服务网络seo优化平台
  • 电商系统开发公司360优化大师安卓手机版下载安装
  • 陕西网页徐州seo外包平台
  • 网站流量分布网站推广seo招聘
  • 上海网站建设官方网站营销对企业的重要性
  • 做网站配置服务器海淀区seo全面优化
  • 广州网站设计制作公司有哪些郑州整站网站优化
  • 网站开发者工具解读怎么推广自己的公司
  • 买cms做网站设计网站都有哪些
  • 手机产品 网站建设外贸网站如何推广优化
  • 做网站开发电脑配置搜索引擎优化常用方法
  • 企业网站建设的成本疫情防控最新通告
  • 网站架设 数据库选用引擎搜索网站
  • 营销型网站哪家好sem和seo是什么
  • 有什么网站可以做java算法互联网营销师考试内容
  • 传媒有限公司武汉seo哪家好
  • 照片展示网站模板免费下载种子搜索
  • 做一个公司的门户网站多少钱网站关键词排名软件推荐
  • 免费网站源码国家认可的教育培训机构