首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在不将其存储在驱动器/服务器的情况下动态创建PDF,然后将其转换为FileBody类型。

在不将其存储在驱动器/服务器的情况下动态创建PDF,然后将其转换为FileBody类型。
EN

Stack Overflow用户
提问于 2017-04-11 16:22:50
回答 1查看 1.2K关注 0票数 2

我有以下代码:

代码语言:javascript
复制
    MultipartEntityBuilder builder = MultipartEntityBuilder.create();

    //Want this to be on-the-fly pdf creation instead of using an existing one
    File thePDF = new File("/path-to-pdf");

    FileBody fb = new FileBody(thePDF);
    builder.addPart("Body", fb);
    ....Code to use this builder with pdf in a rest callout

在上面的代码中,我使用了一个现有的pdf文件。我想使用动态创建的pdf代替。我知道如何使用iText创建pdf,但我不想在服务器中创建一个新文件。是否有一种方法可以存储文件的内容并将其类型转换为FileBody或file,以便与MultipartEntityBuilder一起使用,而无需在磁盘上实际创建文件?

有什么建议吗?

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-11 20:27:46

用于创建PDF使用:

代码语言:javascript
复制
ByteArrayOutputStream baOut = new ByteArrayOutputStream();
PdfWriter writer = PdfWriter.getInstance(document, baOut);

对于构建HttpEntity:

代码语言:javascript
复制
builder.addBinaryBody(name, baOut.toByteArray(), contentType, filename);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43351378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档