处理excel中图片的流程:
(1). 将上传的excel保存到临时文件中
(2).将excel中的图片保存在服务器中,excel中原先是图片的地方,将以img标签《img src=’filePath’/>的形式替换原先的图片(图片的路径最好的绝对路径)
(3).将会生成一个新的excel,再根据新的excel入库就可以了
步骤如下:
-1.从网盘中下载poi处理excel所需的jar包:http://pan.baidu.com/s/1nvtkT09
-2.新建一个处理图片的工具类
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;
import javax.servlet.http.HttpServletRequest;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.PictureData;
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.ss.usermodel.WorkbookFactory;
import org.bson.BasicBSONObject;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFPicture;
import org.apache.poi.hssf.usermodel.HSSFPictureData;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFShape;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.ss.usermodel.PictureData;
public class ImgExcelTool extends ExcelCommon
{
Workbook wb = null;
String county = null;
//String timeNum = null;
List<PictureData> pictureDatas = new ArrayList<PictureData>();
List<HSSFPicture> picturePtrs = new ArrayList<HSSFPicture>();
String filePath = null;
String destImgDir = null;
String preUrl =