- 浏览: 281240 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (75)
- Extjs (9)
- Java (27)
- 幽默人生 (2)
- IT新闻 (0)
- Extjs4 (5)
- DB2 (1)
- JQuery (3)
- Myeclipse (2)
- Android (3)
- JSON (2)
- Perl (1)
- Javascript json (1)
- Sping (3)
- Struts2 (2)
- HTML (3)
- SQL (1)
- Spring (2)
- Flash builder4.5 (0)
- Hibernate (2)
- Javascript FusionCharts (0)
- FusionCharts (1)
- Javascript (2)
- CSS (1)
- 刷机 (1)
- 数据库 (3)
- 测试 (1)
- Java解惑 (1)
- Oracle (1)
- Ubuntu (3)
- JDK7 (1)
- eclipse (1)
- tomcat (1)
- gis (0)
- arcgis (1)
最新评论
-
hshyy2005:
赞赞赞!!!
Could not load the Tomcat server configuration at /Servers/Tomcat v7.0 Server at -
Butterfeild:
有效果!但是颜色貌似改不了
Extjs中Ext.grid.GridPanel stripeRows斑马纹 没效果 失效 解决办法 -
lliiqiang:
用户不是程序员,行为要被强制引导.
Web安全 -
lliiqiang:
动态的东西不容易分析,服务器动态容易被攻击漏洞。动态处理仅仅是 ...
Web安全 -
jingyemingyue:
砺雪凝霜 写道 没用啊那你可以试试Aptana这个软件,他也有 ...
spket对Extjs4的支持方法 eclipse插件spket安装 extjs4 提示
- public HttpServletResponse download(String path, HttpServletResponse response) {
- try {
- // path是指欲下载的文件的路径。
- File file = new File(path);
- // 取得文件名。
- String filename = file.getName();
- // 取得文件的后缀名。
- String ext = filename.substring(filename.lastIndexOf(".") + 1).toUpperCase();
- // 以流的形式下载文件。
- InputStream fis = new BufferedInputStream(new FileInputStream(path));
- byte[] buffer = new byte[fis.available()];
- fis.read(buffer);
- fis.close();
- // 清空response
- response.reset();
- // 设置response的Header
- response.addHeader("Content-Disposition", "attachment;filename=" + new String(filename.getBytes()));
- response.addHeader("Content-Length", "" + file.length());
- OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
- response.setContentType("application/octet-stream");
- toClient.write(buffer);
- toClient.flush();
- toClient.close();
- } catch (IOException ex) {
- ex.printStackTrace();
- }
- return response;
- }
- public void downloadLocal(HttpServletResponse response) throws FileNotFoundException {
- // 下载本地文件
- String fileName = "Operator.doc".toString(); // 文件的默认保存名
- // 读到流中
- InputStream inStream = new FileInputStream("c:/Operator.doc");// 文件的存放路径
- // 设置输出的格式
- response.reset();
- response.setContentType("bin");
- response.addHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\"");
- // 循环取出流中的数据
- byte[] b = new byte[100];
- int len;
- try {
- while ((len = inStream.read(b)) > 0)
- response.getOutputStream().write(b, 0, len);
- inStream.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- public void downloadNet(HttpServletResponse response) throws MalformedURLException {
- // 下载网络文件
- int bytesum = 0;
- int byteread = 0;
- URL url = new URL("windine.blogdriver.com/logo.gif");
- try {
- URLConnection conn = url.openConnection();
- InputStream inStream = conn.getInputStream();
- FileOutputStream fs = new FileOutputStream("c:/abc.gif");
- byte[] buffer = new byte[1204];
- int length;
- while ((byteread = inStream.read(buffer)) != -1) {
- bytesum += byteread;
- System.out.println(bytesum);
- fs.write(buffer, 0, byteread);
- }
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- //支持在线打开文件的一种方式
- public void downLoad(String filePath, HttpServletResponse response, boolean isOnLine) throws Exception {
- File f = new File(filePath);
- if (!f.exists()) {
- response.sendError(404, "File not found!");
- return;
- }
- BufferedInputStream br = new BufferedInputStream(new FileInputStream(f));
- byte[] buf = new byte[1024];
- int len = 0;
- response.reset(); // 非常重要
- if (isOnLine) { // 在线打开方式
- URL u = new URL("file:///" + filePath);
- response.setContentType(u.openConnection().getContentType());
- response.setHeader("Content-Disposition", "inline; filename=" + f.getName());
- // 文件名应该编码成UTF-8
- } else { // 纯下载方式
- response.setContentType("application/x-msdownload");
- response.setHeader("Content-Disposition", "attachment; filename=" + f.getName());
- }
- OutputStream out = response.getOutputStream();
- while ((len = br.read(buf)) > 0)
- out.write(buf, 0, len);
- br.close();
- out.close();
- }
评论
2 楼
jingyemingyue
2011-12-20
那个下载网络文件是通过一个url地址来下载的,你公司的文件服务器和网页服务器应该是在同一个局域网里的,直接共享文件读取就可以了
1 楼
nealzhuqian
2011-12-20
请问博主,上面你提供的下载网络文件的方法,适合于公司将文件放在下载服务器上,然后在网页服务器上提供流形式的下载吗?因为我现在有这样的情况,希望能借鉴一下
发表评论
-
hibernate-------could not instantiate id generator
2012-09-27 11:24 6125今天用Hibernate操作Mssql20 ... -
两种单例模式比较
2012-05-18 14:18 1292第一种: public class Test { ... -
MyEclipse Update Progress Error现象
2012-05-17 15:31 1215设置 Window->Prefrences->Ge ... -
Java内存模式
2012-04-10 14:49 947http://blog.csdn.net/intlgj/art ... -
Java解惑II
2012-02-27 10:42 1122public class Test { ... -
java.sql.SQLException: Listener refused the connection with the following error:
2012-02-23 11:10 15192java.sql.SQLException: Listener ... -
logback中文手册
2012-02-16 10:34 2542Logback是由log4j创始人设计的又一个开源日志组件。l ... -
使用logback替换原有项目中的log4j
2012-02-07 11:04 1826据说logback性能比较高,故想替换以前项目中的log4j, ... -
在Java中使用无符号整型
2012-01-31 09:37 9770在项目要使用无符号整型,可以在项目中加入joou. ... -
Java学习笔记之序列化
2012-01-30 15:11 978用static或者transient ... -
Java性能分析工具
2012-01-30 10:27 1116分享三款Java性能分析工具: 1.JProfiler ... -
Java内存小解
2011-12-26 17:25 945java中堆和堆栈的区别 1.栈(stack)与堆(he ... -
EL表达式 三目运算符在不同版本Tomcat中的表现
2011-12-14 13:50 3744我在JSP页面中使用了EL表达 式${param. ... -
Java反射实现类似Hibernate的通用增删改查
2011-10-31 22:48 1486package com.zsw.util.service; ... -
map的三种遍历方法
2011-09-20 16:16 931集合的一个很重要的操作---遍历,学习了三种遍历方法,三种方 ... -
Hibernate属性配置
2011-09-07 11:51 1299引用 Hibernate 配置属性 Hibern ... -
关于struts.enable.DynamicMethodInvocation = true
2011-09-05 10:26 2368关于struts.enable.DynamicMethodI ... -
Java创建Web监听
2011-08-31 15:31 1211Java提供一些Servlet监听器,用于监听一些重要事件的发 ... -
<s:action />参数及URLRewriter重写地址后被包含后的jsp中链接问题
2011-07-28 10:37 11721:<s:action />在使用时的参数说明&l ... -
JAVA小程序的内存分析
2011-07-22 21:25 8451,基础数据类型直接在栈空间stack分配,方法的形参,直接在 ...
相关推荐
Java文件下载的几种方式,是很方便的,找了半天找到了,共享一下
本文将详细探讨Java实现文件下载的几种主要方法。 ### 1. 使用HttpServletResponse #### 1.1 设置Content-Disposition 通过设置HttpServletResponse的`setContentDisposition()`方法,可以指定浏览器以下载方式...
这篇博客"java下载文件的种方式"可能详细介绍了几种不同的Java实现文件下载的方法。以下是对这些方法的总结和扩展: 1. **HTTP响应流下载** 这是最基本的方式,通过Servlet或Spring MVC等框架处理HTTP请求,然后在...
另外,压缩包中的两个`.mht`文件可能是关于Java文件下载的文章网页,它们可能提供了更多详细的示例和技巧,如使用流来处理大文件,防止内存溢出,或者实现断点续传下载。 总的来说,Java生成Excel有多种库可以选择...
### 最常用的几种Java打包方式总结 #### 一、引言 在Java开发过程中,将编写的程序打包成可执行文件是十分重要的一个环节。本文旨在详细介绍最常用的几种Java打包方式及其使用的工具,帮助开发者更加方便和轻松地...
本篇文章将详细介绍在Java中连接Oracle数据库的几种常见方法,以及相关的源码示例。 1. JDBC-ODBC桥连接: JDBC-ODBC桥是Java早期连接数据库的一种方式,它依赖于操作系统上的ODBC数据源。首先,你需要在系统中...
以上就是Java中调用DLL文件的几种常见方式及其注意事项。无论选择哪种方法,理解DLL的工作原理以及Java与原生代码交互的方式都是至关重要的。在实际项目中,应根据需求和项目规模来决定最合适的集成策略。
"用Jsp实现文件下载功能的几种方式" 本文将介绍用Jsp实现文件下载功能的几种方式。这些方式都可以实现文件下载的功能,但每种方式都有其特点和缺点。 方式一:直接提供文件地址 这种方式是最直接最简单的,即把...
本文将详细探讨几种Java下载图片的方法,并提供相应的源代码,帮助开发者更好地理解和应用。 1. **URL连接下载图片** 使用`java.net.URL`和`java.io`包中的类,可以通过建立HTTP连接来下载图片。以下是一个简单的...
介绍Java直接读取、带缓冲读取、内存映射读取文件,并详细注释。
### Java IO流几种经典使用方式 #### 一、输入输出流(Input/Output Stream) 在Java中,`java.io`包提供了处理输入/输出操作的基本类,主要包括`InputStream`和`OutputStream`。 ##### 1. 字节流(Byte Stream) **...
### Java解析XML的四种方式详解 #### 一、DOM(Document Object Model) DOM是一种平台和语言中立的接口,它将XML文档表示为一个树结构,使得程序可以创建、读取、更新或删除树中的元素。DOM实现了W3C的标准,能够...
以下是几种常见的 Java FTP 客户端库的比较: 表 1: Java FTP 客户端库比较 | 库名称 | 作者 | 版本 | 特点 | | --- | --- | --- | --- | | J-ftp | | 1.50 | 支持 FTP、SFTP、FTPS、TFTP 等协议 | | simpleftp |...
Java 实现批量下载并压缩文件是一项常见的任务,尤其在处理大量数据存储时。在这个过程中,主要涉及以下几个关键知识点: 1. **文件下载**:在Java中,文件下载通常基于网络I/O流,通过发送HTTP请求获取远程服务器...
在提供的压缩包文件中,"三种方式(原始方式_spring_jndi)实现java远程调用(rmi)"包含了相关的示例代码,帮助开发者理解并实践这三种RMI实现方法。在MyEclipse或其他Java开发环境中导入这些代码,可以进行调试和...
Java实现文件下载,支持好几种下载方法,解决了中文文件名乱码问题.
2项目为实现文件上传的三种方式的源码,详细说明见我的博客。 jsp_upload-servlet项目:(1).Jsp/servlet 实现文件上传 (2).模拟Post请求/servlet 实现文件上传 jetty_upload-springmvc项目:(3).模拟Post请求/...