java - 将 BufferedReader 转换为文件

标签 java

我有一个 servlet,它向请求用户返回一个 PDF 文档。从浏览器调用时,PDF 文档会自动下载。 现在我需要从 Java(独立代码,而不是服务器端)调用这个 servlet。此 Java 代码获取 PDF 文档后,需要使用 Apache PDF Box API 将其转换为图像。

这就是我的 Java 代码的样子。它将字节写入屏幕。

URL url = new URL("http://localhost:8080/Stream/Document&type=pdf");
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream())); 
String line = in.readLine();
System.out.println( line ); 
in.close();

这就是将其转换为图像的代码的样子

String pdfFileName = "myfile.pdf";
PDDocument document = PDDocument.load(new File(pdfFileName)); 

现在我需要将这两者结合起来,以便将下载的 PDF 文件(在内存中,不希望将其写入文件系统)转换为 JPG。因此,我需要以某种方式将 BufferedReader 对象转换为 File 对象,并将其作为输入传递给 PDDocument,而不是传递硬编码的文件名。

我无法弄清楚这种转换是如何发生的。

最佳答案

From the docs , PDDocument 也可以从字节数组或 InputStream 加载。

因此,只需使用来自 url 的输入流并将其传递给 PDDocument.load(InputStream)

关于java - 将 BufferedReader 转换为文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39165469/

相关文章:

java - 当实例转换为泛型类型时,编译器将报告警告

java - Short 加 Short 是一个 int

java - iOS 中的 http 状态 400

java - Java 中的多维数组 OutOfBondsException

java - 四个方向(上、下、左、右)遍历二维数组

java - 处于WAITING状态的线程是否可以无限期等待

java - 如何在后台自动运行 Activity 的方法

java - RC4加密java

java - freemarker 中的数字格式问题 - 在小数后进行舍入

java - NetBeans + TestNG -> "Go to source"不可能