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')。 –