`
dzgwt2004
  • 浏览: 167463 次
  • 来自: 浙江杭州
社区版块
存档分类
最新评论

关于生成PDF文件 直接下载的问题? 请教大家

阅读更多
处理过程:
后台生成PDF
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		Document document = new Document(PageSize.A4, 36,36,36,36);
		ByteArrayOutputStream ba = new ByteArrayOutputStream();
		try{
			PdfWriter writer = PdfWriter.getInstance(document, ba);
			document.open();
			document.add(new Paragraph("Hello World"));
		}catch(DocumentException de){
			de.printStackTrace();
			System.err.println("A Document error:" +de.getMessage());
		}
		document.close();
		response.setContentType("application/pdf");
		response.setContentLength(ba.size());
		ServletOutputStream out = response.getOutputStream();
		ba.writeTo(out);
		out.flush();
	}


前台获取:
function getPDF()
{
	document.location.href="servlet/GetPDF";
}


问题是这样操作的话,pdf文件直接在浏览器上显示了,那如何直接提示用户下载到本地那?
分享到:
评论
2 楼 dzgwt2004 2006-12-26  
多谢大哥。我试试先
1 楼 fins 2006-12-26  
在  response.setContentType("application/pdf");  后加上

        response.setHeader("Content-Disposition", "attachment;filename=\"" + exportFileName + "\"");
        response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
        response.setHeader("Pragma", "public");
        response.setDateHeader("Expires", (System.currentTimeMillis() + 1000));


关键是

response.setHeader("Content-Disposition", "attachment;filename=\"" + exportFileName + "\"");
这行

告诉浏览器 这是一个 附件

相关推荐

    Python100经典练习题 (2).pdf

    "Python100经典练习题 (2).pdf"很可能是为了帮助学习者巩固和提升Python编程技能而设计的一系列挑战性问题。通过解决这些题目,你可以深入理解Python的基础语法、数据结构、控制流、函数、模块化编程、错误与异常...

    学生课堂常规要求.pdf

    根据提供的文件信息,文档标题和描述均为“学生课堂常规要求.pdf”,标签为“技术”,但是实际提供的【部分内容】无法用于生成知识点,因为它包含了大量重复的数字,而且没有任何具体的关于学生课堂常规要求的信息。...

    2021春北京课改版下册数学预习单6年级.pdf

    由于您提供的文件信息中并未包含实际的预习单内容,我无法直接从文件内容生成知识点。不过,根据文件的标题和描述,我们可以推断出这份文件是针对2021年春季学期,北京地区采用课程改革版教材的小学六年级学生的数学...

    软件认识实习报告范文.pdf

    在第二个项目中,实习生参与了一线通管理系统的开发,负责设备查询、修改及报表功能,包括折线图和饼状图的生成以及Excel导出。这些功能的实现需要对数据可视化和文件导出有一定的了解。实习生通过学习和实践,掌握...

    人教版三年级下册数学《期中考试试卷》含答案解析.pdf

    由于提供的文件内容包含了大量的数字、字母、符号以及一些乱码,并未提供实际的教育内容或者明确的知识点,这使得直接生成具体的教育知识点变得不可能。这些内容似乎来自于某种扫描文稿,其中包含了大量无法识别的...

    资料员毕业实习总结范文.pdf

    同时,对于工作中遇到的问题,我学会了主动寻找答案,通过查阅资料、向同事请教,不断提升自我解决问题的能力。 总的来说,这次实习让我真切体验到了建筑行业的挑战和魅力,也让我对未来的职业规划有了更明确的方向...

    师范生教育实习总结.pdf

    但是,考虑到文件的标题是“师范生教育实习总结.pdf”,可以假设文档内容涉及了师范生在教育实习过程中的体验、学习和感悟。基于这一假设,我将生成与教育实习相关的知识点。 师范生教育实习是师范教育的重要组成...

    计算机基础实训报告.pdf

    Serv-U是一款流行的FTP服务器软件,通过它,可以创建、管理和配置FTP站点,实现文件的上传与下载。这涉及到IP地址、端口号、用户权限等概念的理解和操作。 6. **Web站点创建与配置**: 这部分可能涉及到HTML、CSS...

    安徽省计算机一级考试试题库及答案.pdf

    学习这些知识不应局限于书本,可以参加相关的会议、研讨会,向经验丰富的上级请教,阅读报告,从中学习解决问题的方法和艺术。要时刻保持学习的热情,不断拓展学习领域,适应工作中的复杂性和综合性。学习不仅限于...

    自主招生自荐信范文北京大学自主招生自荐信分享.pdf

    由于提供的文件内容信息不足,无法直接生成相关知识点。但是,可以从“自主招生自荐信”这一主题出发,详述自主招生自荐信的撰写技巧、注意事项以及北京大学的自主招生政策等相关知识点。以下内容将围绕这些方面展开...

    LINUX内核完全剖析

    - **在线论坛**:如Linux Kernel Mailing List (LKML)等,可以向经验丰富的开发者请教问题,交流心得。 通过以上内容的学习和实践,读者可以逐步建立起对Linux内核的深刻理解,为进一步深入探索打下坚实的基础。

    基于微信小程序的智能膳食分析系统.zip

    在压缩包内的“基于微信小程序的智能膳食分析系统.pdf”文件中,可能详细介绍了该系统的架构设计、技术实现、用户体验设计以及实际应用案例等内容。这份文档可能涵盖了系统开发的背景、目标、功能模块的详细说明、...

Global site tag (gtag.js) - Google Analytics