Java 使用iText创建PDF而不将其保存到临时文件
代码:Java 使用iText创建PDF而不将其保存到临时文件,java,itext,Java,Itext,代码: 一切正常,但我不想将pdf保存到临时文件夹中,而只是将其插入到私人文件或其他文件中。我正在创建一个具有下载PDF文件功能的web应用程序,我只需要将PDF放在一个变量中。PdfWriter有一个静态方法getInstance(Document Document,OutputStream os)。使用ByteArrayOutputStream将内容存储到字节数组中。稍后,使用此数组将文件发送给用户。也许您需要将数组包装成ByteArrayInputStream private String
一切正常,但我不想将pdf保存到临时文件夹中,而只是将其插入到
私人文件
或其他文件中。我正在创建一个具有下载PDF文件功能的web应用程序,我只需要将PDF放在一个变量中。PdfWriter
有一个静态方法getInstance(Document Document,OutputStream os)
。使用ByteArrayOutputStream
将内容存储到字节数组中。稍后,使用此数组将文件发送给用户。也许您需要将数组包装成ByteArrayInputStream
private String FILE = "e:/FirstPdf.pdf";
public void preparePDF() {
try {
Document document = new Document();
PdfWriter.getInstance(document, pdfFile);
document.open();
addTitlePage(document);
document.close();
} catch (Exception e) {
e.printStackTrace();
}
}
这样,您就不需要将文件存储在文件系统上。
PdfWriter
有一个静态方法getInstance(Document Document,OutputStream os)
。使用ByteArrayOutputStream
将内容存储到字节数组中。稍后,使用此数组将文件发送给用户。也许您需要将数组包装成ByteArrayInputStream
private String FILE = "e:/FirstPdf.pdf";
public void preparePDF() {
try {
Document document = new Document();
PdfWriter.getInstance(document, pdfFile);
document.open();
addTitlePage(document);
document.close();
} catch (Exception e) {
e.printStackTrace();
}
}
这样,您就不需要将文件存储在文件系统中。您可以将
文档
写入输出流而不是文件。如果您希望能够动态生成和下载PDF文件(即,如果生成PDF文件不超过一秒钟),那么您可以创建一个servlet并写入HttpServletResponse.getOutputStream()
您可以将文档
写入输出流
而不是文件。如果您希望能够动态生成和下载PDF文件(即,如果生成PDF文件不超过一秒钟),那么您可以创建一个servlet并写入HttpServletResponse.getOutputStream()
如果不想保存PDF
,可以使用ByteArrayOutputStream
。看看这个如果不想保存PDF
,可以使用ByteArrayOutputStream
。看看这个PDF不能存储在变量中,将其保存到特定位置将其完整路径存储到变量中,并将该路径传递到下载文件函数以下载它。PDF不能存储在变量中,将其保存到特定位置将其完整路径存储到变量中,并将该路径传递给下载文件函数以下载它。