0
String w=request.getParameter("fpath");

try {
    FileReader fr = new FileReader(w);
    BufferedReader reader = new BufferedReader(fr);
    StringBuilder sb = new StringBuilder();
    String line = "";
    while ((line = reader.readLine()) != null) {
        sb.append(line.trim());
    }
    String result = sb.toString();
     OutputStream file = new FileOutputStream(new File("E:\\Test.pdf"));
    Document document = new Document();
    PdfWriter.getInstance(document, file);
    document.open();
    @SuppressWarnings("deprecation")
    HTMLWorker htmlWorker = new HTMLWorker(document);
    htmlWorker.parse(new StringReader(result));
   response.addHeader("Content-Disposition", "attachment; filename=\"file.pdf\""); 
   response.setContentType("application/pdf");


    document.close();
    file.flush();   
}


catch (Exception e) {
    e.printStackTrace();
}

这是我将 html 保存到 Pdf 文件的代码但是当我单击 On save as 按钮时,它会保存到 E:\Test.pdf ,而我不想设置 E:\Test.pdf 物理路径,如果用户愿意单击“保存”按钮,然后它应该询问您是否需要保存用户将选择该位置然后保存到该位置 response.addHeader("Content-Disposition", "attachment; filename=\"file.pdf\""); response.setContentType("应用程序/pdf"); 我不知道如何设置文件名和文件内容,这样我就可以将我的 pdf 文件保存到所需的位置。

4

1 回答 1

0

因此,与其创建新FileOutputStream的使用response.getOutputStream(). 除了设置标头之外,您不会在响应中发送任何其他内容

于 2013-08-01T06:07:16.997 回答