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

网站设计高端网站设计徐州编程培训机构

网站设计高端网站设计,徐州编程培训机构,企业网站怎么制作,莱特币做空网站1.不能使用XSSFWorkbook,必须使用HSSFWorkbook,否则导出excel后,不显示插入的图标和内容,如果是读取的已有的excel模板,必须保证excel的格式是xls,如果把xlsx通过重命名的方式改为xls,是不生效的,后面执行下…

1.不能使用XSSFWorkbook,必须使用HSSFWorkbook,否则导出excel后,不显示插入的图标和内容,如果是读取的已有的excel模板,必须保证excel的格式是xls,如果把xlsx通过重命名的方式改为xls,是不生效的,后面执行下面读取已有模板时,会报HSSF和XSSF冲突不兼容问题

File tplFile = new File("E:/exportTpl/" + tplFileName + ".xls");  // 原模板,不要往原模板写
// 加载模板
// workbook = WorkbookFactory.create(tplFile); 这种会回写原来的
InputStream in = new FileInputStream(tplFile);
workbook = new HSSFWorkbook(in);

而且还不能用WorkbookFactory.create(tplFile);读取已有的模板,会造成模板被导出的内容覆盖,后续我有合并单元格的逻辑,总是报已经合并了,浪费了我好就才排查出来

2.ClientAnchor anchor = drawing.createAnchor(0, 0, 0, 0, 20, startRow, 21, lastRow);

比如插入的表格是20列,不能开始列是20,结束列也是20,必须大于开始列一列,否则插入的表格什么也不显示,这里被坑了半天

3.int pdfIdx = workbook.addOlePackage(pdfBytes, "Sd12abc.pdf", "application/pdf", "Sd12abc.pdf");

最后一个pdf参数尤其重要,我再这里被坑了1天多,表格中的图标是生成了,但是点击图标就是报“不能启动此对象的源应用程序”,代码也不报错,各种排查,查资料,最后对着成功的例子一句句改,改到这里,换成成功例子的数字就可以正常打开,于是就明白怎么回事了,经过反复测试,确实r如此,不能放中文。数字、英文、数字英文混写,大小写都没问题,就是不能中文。

4.开发中一开始用的是XSSFWorkbook,excel格式是xlsx,导致生成的jar包模板始终是xlsx的,重新启动编译也不行,这个可是隐藏的坑,当我只知道不能用XSSFWorkbook插入pdf,换成HSSFWorkbook,经过一番调试,才知道仅仅通过重命名的方式把xlsx改成xls也不行,实际还是xlsx,经过另存为xls才会变成真正的xls。我这样改了后,发现还是报不兼容,代码始终报读取的模板格式是xlsx,最后排查是打成的jar包中的模板是xlsx。

下面附上代码,但目前还有一个问题未解决:

生成"未命名1.xls,但是打开"未命名1.xls",行中的附件pdf图标, 点击能正常打开,但是点击后,图标消失,只留图标的描述"Sd12abc.pdf",而点击图标消失前,图标的描述"Sd12abc.pdf"也没显示, 图标点击消失后,只留图标的描述"Sd12abc.pdf"。同时打开excel后,在点击图标前,如果调整一下图标的大小,再次双击pdf图标,打开pdf后,图标就不会消失。图标消失后,实际还在,只是看着像是透明的,双击还能继续打开附件pdf。

如上图,点击打开后关闭对话框,图标就变成透明了。

如果有知道如何改的,请积极留言探讨

public static void main(String[] args) throws IOException {//只有HSSFWorkbook才能使用OLE对象,并且poi需要在4.0之上// 创建工作簿和工作表对象/* Workbook workbook = new HSSFWorkbook ();Sheet sheet = workbook.createSheet("Sheet1");*/File tplFile = new File( "C:\\Users\\670421141\\Desktop\\bom表.xls");  // 原模板,不要往原模板写InputStream in = new FileInputStream(tplFile);Workbook workbook = new HSSFWorkbook(in);Sheet sheet = workbook.getSheetAt(0);File pdfFile = new File("E:\\DataReport\\2025\\100000\\20250331\\测试供应商.pdf");FileInputStream fis = new FileInputStream(pdfFile);byte[] pdfBytes = new byte[(int) pdfFile.length()];fis.read(pdfBytes);fis.close();// 自定义获取pdf展示图标String imagePath = "D:\\SvnWorkSpace\\pdfdemo\\src\\main\\webapp\\images\\Pdf.png";FileInputStream fis1 = new FileInputStream(imagePath);BufferedInputStream bis = new BufferedInputStream(fis1);ByteArrayOutputStream baos = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int bytesRead;while ((bytesRead = bis.read(buffer)) != -1) {baos.write(buffer, 0, bytesRead);}byte[] imageBytes = baos.toByteArray();//将文件的图标添加进入到Excel文件内int iconid = workbook.addPicture(imageBytes, HSSFWorkbook.PICTURE_TYPE_PNG);int pdfIdx = workbook.addOlePackage(pdfBytes, "Sd12abc.pdf", "application/pdf", "Sd12abc.pdf");Drawing<?> drawing = sheet.createDrawingPatriarch();ClientAnchor anchor = drawing.createAnchor(10, 10, 10, 10, 20, 9, 21, 12);anchor.setAnchorType(HSSFClientAnchor.AnchorType.MOVE_DONT_RESIZE);drawing.createObjectData(anchor, pdfIdx, iconid);try {OutputStream outputStream = new FileOutputStream("C:\\Users\\670421141\\Desktop\\未命名1.xls");workbook.write(outputStream);System.out.println("文件写入成功!");} catch (IOException e) {e.printStackTrace();}workbook.close();}
附上excel的矢量pdf图标 
http://www.dtcms.com/wzjs/823869.html

相关文章:

  • 朱子网站建设wordpress 删除角色
  • 三灶网站建设wordpress和帝国cms百度收录
  • 专注扬中网站建设做网站有免费的吗
  • 自己做网站处理图片用什么软件wordpress 内容做成目录
  • 怎么查网站流量网站建设考试试题
  • 辽宁省建设厅特种工查询网站龙岩网站建设推广
  • 长春网站建设方案优化建筑学习网
  • 重庆梁平网站建设报价快递建站收费标准
  • 网站流量合作网站建设排版
  • 网站需要在哪些方面备案wordpress关闭手机访问
  • 做ae动图的网站表白小程序制作
  • 新站seo优化快速上排名深圳哪家做网站最好
  • 卖视频会员个人网站怎么做机械加工信息
  • 网站如何做才会有流量湖南网站建设优化
  • 中工信融营销型网站建设在网上做黑彩网站会怎样处罚
  • 校园网站建设与管理问题分析如何在app上做网站
  • 建设商业门户网站的重要性金昌市住房和城乡建设局网站
  • 哈尔滨创意网站建设网络系统集成论文
  • 如何查看网站是用什么模板做的做网站 指导
  • 适合新手模仿的网站好看的手机端网站开发页面
  • 怎么做网站登录站如何做拦截网站
  • 哪家公司网站建设好点服装公司网站策划方案
  • 做网站还有钱赚吗网页做成软件
  • 哈铁工程建设公司网站谷歌翻译做多语言网站
  • 服装公司网站结构自己做的网站怎么设置信息必填
  • 重庆网络推广网站wordpress改了固定链接出现404
  • 自己做个购物网站html 网站新功能介绍
  • 网站系统源码孟村县做网站价格
  • 网站建设专业wordpress按钮下拉
  • 东莞市建设企业网站服务机构google搜索引擎入口