使用java往word中嵌入其他文件最重要的是要创建ole。目前将文件嵌入了word但是图标是没有的,因此自己生成了一个图标替代。
部分代码
代码如下:
POIFSFileSystem fs = new POIFSFileSystem(); try { Ole10Native ole10Native = new Ole10Native(label, filename, command, data); ByteArrayOutputStream out = new ByteArrayOutputStream(); ole10Native.writeOut(out); //在根目录中设置文档的内容 ByteArrayInputStream in1 = new ByteArrayInputStream(label.getBytes()); fs.createOrUpdatedocument(in1, "u0003ObjInfo"); ByteArrayInputStream in2 = new ByteArrayInputStream(out.toByteArray()); fs.createOrUpdatedocument(in2, "u0001Ole10Native"); ByteArrayOutputStream out2 = new ByteArrayOutputStream(); fs.writeFilesystem(out2); String olePath = "word" + separator + "embeddings" + separator + oleName; //嵌入文件由于没有图标所以自己生成一个图标 String imgPath = "word" + separator + "media" + separator + imgName; ... } catch (Exception e) { e.printStackTrace(); }finally { IOUtils.close(fs); }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)