小编Rav*_*lau的帖子

使用Apache POI将文件嵌入到Excel中的XSSF表中

我发现kiwiwings 回答了如何使用Apache POI将文件嵌入Excel的问题,但遗憾的是他的回答仅涵盖了HSSF电子表格(XLS格式),我们目前正在使用新的XSSF格式(XLSX)和解决方案建议用于HSSF电子表格不起作用.我尝试移植它,但棺材中的最后一个钉子来自于XSSF世界中没有HSSFObjectData等效的事实.

这是我到目前为止所做的 - 我找到了一种将文件附加到Excel文件的方法.这段代码做到了:

private PackagePart packageNotebook(
    final OPCPackage pkg,
    final String notebookTable,
    final String taskId,
    final String notebookName,
    final byte[] contents
) throws InvalidFormatException, IOException
{
    final PackagePartName partName =
        PackagingURIHelper.createPartName( "/notebook/" + notebookTable + "/" + taskId + "/" + notebookName );
    pkg.addRelationship( partName, TargetMode.INTERNAL, PackageRelationshipTypes.CUSTOM_XML );
    final PackagePart part = pkg.createPart( partName, "text/xml" );
    IOUtils.write( contents, part.getOutputStream() );

    return part;
}
Run Code Online (Sandbox Code Playgroud)

我还能够创建我想用作Excel文件中的锚点的图像.然而,我无法做的是将该图像"链接"到嵌入的内容,就像kiwiwings能够在他的回复中做的那样.

我的最终目标是在其中包含一个带有嵌入对象的XLSX Excel文件,这样用户可以双击我在单元格中打开的锚点,然后就可以编辑文件了,就像你做的那样使用Excel客户端嵌入文件.

有没有人有一个如何做到这一点的工作示例?

java excel apache-poi

5
推荐指数
2
解决办法
2353
查看次数

标签 统计

apache-poi ×1

excel ×1

java ×1