1
我试图从iText库生成的文件生成一个inputStream对象。这些文件中的第一个字节:从Itext生成inputStream pdf源
%PDF-1.4
%âãÏÓ
2 0 obj
<</Length 1571/Filter/FlateDecode>>stream
)©toÿqûºÒç¹Ð4)ÖÞ{Ñ$,·7?ÂDCþDÆü½
我试图从iText库生成的文件生成一个inputStream对象。这些文件中的第一个字节:从Itext生成inputStream pdf源
%PDF-1.4
%âãÏÓ
2 0 obj
<</Length 1571/Filter/FlateDecode>>stream
)©toÿqûºÒç¹Ð4)ÖÞ{Ñ$,·7?ÂDCþDÆü½
假设您创建PDF这样的:
ByteArrayOutputStream out = new ByteArrayOutputStream();
Document document = new Document();
PdfWriter.getInstance(document, out);
document.open();
document.add(new Paragraph("Hello World"));
document.close();
在这种情况下,你可以将OutputStream
转换为InputStream
这样的:
InputStream in = ByteArrayInputStream(out.toByteArray());
假设您创建了这样的PDF文件:
FileOutputStream out = new FileOutputStream("my.pdf");
Document document = new Document();
PdfWriter.getInstance(document, out);
document.open();
document.add(new Paragraph("Hello World"));
document.close();
然后你就可以创建一个InputStream
这样的:
InputStream in = new FileInputStream("my.pdf");
你的问题是错误的。我纠正了它。你不是在创建“文本”。您正在创建PDF文件(或文档)。你希望该文件的字节可以作为'InputStream'使用,但是你并没有告诉我们你是否在磁盘上创建了文件(在这种情况下,你可以简单地创建一个'FileInputStream'),或者如果你创建了文件内存(在这种情况下,您有一个'ByteArrayOutputStream',您可以轻松地将其转换为'ByteArrayInputStream')。 –