`
linkyou66
  • 浏览: 234954 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

经过证实的下载文件java实现方法

 
阅读更多
<p>//会弹出对话框让用户自己选择保存路径</p>
<p>public static HttpServletResponse download(String path, HttpServletResponse response) {<br> try {<br> // path是指欲下载的文件的路径。<br> File file = new File(path);<br> // 取得文件名。<br> String filename = file.getName();<br> // 取得文件的后缀名。<br> String ext = filename.substring(filename.lastIndexOf(".") + 1).toUpperCase();</p>
<p> // 以流的形式下载文件。<br> InputStream fis = new BufferedInputStream(new FileInputStream(path));<br> byte[] buffer = new byte[fis.available()];<br> fis.read(buffer);<br> fis.close();<br> // 清空response<br> response.reset();<br> // 设置response的Header<br> //response.setHeader("Content-disposition","attachment;filename="+"book.zip"); <br> response.addHeader("Content-Disposition", "inline;filename=" + new String(filename.getBytes()));<br> response.addHeader("Content-Length", "" + file.length());<br> OutputStream toClient = new BufferedOutputStream(response.getOutputStream());<br><br> response.setContentType("application/octet-stream");<br> toClient.write(buffer);<br> toClient.flush();<br> toClient.close();<br> } catch (IOException ex) {<br> ex.printStackTrace();<br> }<br> return response;<br>}<br>//不会弹出保存对话筐<br> public static void downloadNet(HttpServletResponse response,String desFilePath,String furl) throws MalformedURLException {<br> // 下载网络文件<br> int bytesum = 0;<br> int byteread = 0;<br> URL url = new URL(furl);</p>
<p> try {<br> URLConnection conn = url.openConnection();<br> InputStream inStream = conn.getInputStream();<br> FileOutputStream fs = new FileOutputStream(desFilePath);</p>
<p> byte[] buffer = new byte[1204];<br> int length;<br> while ((byteread = inStream.read(buffer)) != -1) {<br> bytesum += byteread;<br> System.out.println(bytesum);<br> fs.write(buffer, 0, byteread);<br> }<br> fs.flush();//很重要<br> fs.close();//很重要,否则下载的文件无法打开<br><br> } catch (FileNotFoundException e) {<br> e.printStackTrace();<br> } catch (IOException e) {<br> e.printStackTrace();<br> }<br> }</p>
分享到:
评论

相关推荐

    基于JAVA实现的Modbus通讯模块在温测系统中的应用.pdf

    根据给定文件信息,本文将详细阐述“基于JAVA实现的Modbus通讯模块在温测系统中的应用”所涉及的关键知识点。 首先,“Modbus通讯模块”是一个在工业自动化领域中常用到的通信协议实现方式。Modbus协议是由Modicon...

    DownloadThread.zip_ DownloadThread_DownloadThread_Java 多线程 下载_ja

    描述中的"java实现的多线程下载程序,可以进行断点续传,基本可以满足普通下载需求"进一步证实了这一点。这意味着开发者已经考虑到了网络不稳定或意外情况可能导致的下载中断,并提供了恢复机制,使得用户能够高效且...

    java课本编写资料下载

    数组在 Java 中虽然表现为对象,但它的实现和普通类存在显著差异。以下是对Java数组深入理解的关键知识点: 1. **数组的创建方式**: - 在 Java 中创建数组时,我们使用的是`new`关键字后面跟着类型的数组形式,...

    一个java实现的地图浏览器

    标题中的“一个java实现的地图浏览器”表明这是一个使用Java编程语言开发的桌面应用程序,其主要功能是提供地图浏览服务。在Java领域,Swing是一个常用的GUI(图形用户界面)库,常用于构建桌面应用。因此,我们可以...

    基于Java实现的简单基础验证框架设计源码

    基于Java实现的简单基础验证框架设计源码是针对Java编程语言开发的一个验证工具,它的核心目的在于提供一种简洁、易于理解和使用的验证机制。本框架的设计思想和实现细节都体现了“简单即美”的理念,使得程序员在...

    精选_基于Java实现的五子棋小游戏_源码打包

    【标题】"精选_基于Java实现的五子棋小游戏_源码打包" 指的是一款使用Java编程语言开发的五子棋游戏的源代码集合。这个项目可能包含了一个完整的五子棋游戏从用户界面到游戏逻辑的所有实现,旨在帮助学习者理解Java...

    Java连接Acess的jar包.rar

    另一种方法是使用纯Java实现的数据库驱动,比如UCANACCESS,它是一个开源的、无需ODBC桥接器即可直接与MS Access数据库交互的驱动。 标题“Java连接Acess的jar包.rar”表明这是一个包含Java连接Access所需JDBC驱动...

    表白小程序(java版本).zip

    描述中提到,“一个java写的表白程序”,证实了这个程序是使用Java语言编写的,它可能包含了一些特定的算法或者设计,使得用户可以通过运行程序来向心仪的对象表达情感。开发者提到“已经打包,解压后运行”,这表明...

    自动识别照片文字(java).7z

    标题中的“自动识别照片文字(java).7z”表明这是一个与Java相关的项目,主要功能是实现自动识别图片中的文字,这通常涉及到光学字符识别(OCR)技术。光学字符识别是一种人工智能领域的方法,它允许软件将图像中的...

    基于Java开发的智能考勤管理系统后端设计源码

    这一点从文件列表中的pom.xml文件可以得到证实。Maven是一个基于项目对象模型(POM)的项目管理和构建工具,它为Java项目提供了依赖管理、构建生命周期管理以及文档生成等功能,极大地简化了项目开发的复杂性。 ...

    java桌面应用程序(读取百度热搜关键词)

    描述中的“小弟用java写的一个桌面应用程序,可以读取百度新闻热搜词的前10条”进一步证实了程序的核心功能。开发者使用Java进行编程,这需要对Java的基础语法、面向对象编程有深入理解。同时,能够实现数据的抓取和...

    Java版飞鸽(可使用)

    描述中提到的“用Java写的飞鸽”,进一步证实了这是一个使用Java作为主要开发语言的项目。Java是一种广泛使用的编程语言,以其跨平台性、稳定性和强大的类库支持而著名。在Java中实现即时通讯软件,开发者通常会利用...

    java-7-openjdk-amd64.tar.gz

    把这些JRL许可证形式的Sun/OracleJDK源码和对应版本的OpenJDK源码进行比较,发现除了文件头的版权注释之外,其余代码基本上都是相同的,只有字体渲染部分存在一点差异,Oracle JDK采用了商业实现,而OpenJDK使用的是...

    SGIP.rar_ sgip1.2 java_sgip_sgip1.2_联通sgip1.2

    1. 源代码文件:.java文件,这些是Java程序的源代码,包含了实现SGIP 1.2协议接收端功能的类和方法。 2. 类库或依赖:可能包含.jar文件,这是Java的可执行库,用于支持程序运行所需的第三方组件或框架,比如处理网络...

    ansj_seg-master_java_中文自然语言_

    总的来说,ansj_seg是一个Java实现的中文分词工具,它不仅提供了基本的分词功能,还支持用户自定义分词逻辑,这使得它具有很高的灵活性和适应性,可以广泛应用于各种中文文本处理场景,如搜索引擎、聊天机器人、情感...

    基于Java+JSP的医院门诊管理信息系统毕业设计实现+源码毕业设计实现+源码.rar

    描述进一步证实了这是一个毕业设计项目,学生或团队用Java和JSP实现了医院门诊的管理系统,并提供了完整的源代码。这样的设计通常包括患者挂号、医生排班、就诊记录、药品库存管理等多个功能模块。提供源码意味着...

    Java理论与实践:在没有数据库的情况下进行数据库查询

    本文介绍了开源的内存中的SQL...XML方法很适合于报告,但是对于整个应用程序的实现,该方法还有很多不便,并会降低性能。因为数据集的大小是可管理的。如果数据集的大小合适,那么就可以同时利用这两种方法的长处。

    计算机专业毕业设计,课程设计-Java(100套).rar

    标题中的“计算机专业毕业设计,课程设计-Java(100套).rar”表明这是一个包含100个Java编程相关的毕业设计或课程设计项目的压缩文件。这些项目可能涵盖了一系列的Java技术及其在计算机科学教育中的应用。Java是一...

    bfs-java.zip_BFS JAVA_bfs_depth first search_java bfs

    最后的 "java_bfs" 证实了这里的主要焦点是Java实现的BFS算法。 **描述解析:** 描述中提到的 "depth first search algorithm" 明确了我们要讨论的是深度优先搜索算法,尽管标题中已经暗示了这是与BFS相对照的。...

    java poi_3.15依赖库

    这个"java poi_3.15依赖库"就是POI项目的3.15版本,提供了对Excel文件处理的所有必需类和方法。 在描述中提到,此版本的POI被证实是可用的,这意味着它已经过实际测试,能够正常工作在不同的Java项目中。一旦你下载...

Global site tag (gtag.js) - Google Analytics