- 浏览: 422604 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (115)
- spring (1)
- apache-hadoop (1)
- struts 2.x (12)
- ruby & rails (2)
- hibernate 3.x (1)
- oracle (2)
- sqlserver (6)
- maven (3)
- Java (29)
- tomcat (7)
- resin 3.x (2)
- javascript (10)
- eclipse (6)
- DWR (1)
- ibatis (4)
- Linux (4)
- servlet (1)
- J2EE项目分析 (7)
- Lucene (4)
- jQuery (1)
- mysql (2)
- OSGI (1)
- JMS ActiveMQ (2)
- 开源 (1)
最新评论
-
aplixy:
gaoyibin 写道我在io流关闭以后使用renameTo ...
Java File.renameTo方法一直返回false -
GGGGeek:
...
java反射:object is not an instance of declaring class -
zgw06629:
多谢了 字符串必须要单引号真得挺坑的
s:radio 默认值 -
com.張:
村上春树
java反射:object is not an instance of declaring class -
僧_唐:
该方法不能真正的解决 actionMessage或action ...
struts2中多action间传递ActionMessage,ActionError
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(); }
发表评论
-
windows下将jar文件设置成bat
2012-03-09 12:00 2360例如将如下jar包D:\bat\JRadiussimulato ... -
HttpURLConnection相关
2011-09-16 17:57 12071、java.io.FileNotFoundException ... -
UML中类之间的关系及其Java代码例子<转>
2011-05-11 09:38 2513关系是事物之间的联系 ... -
java反射:object is not an instance of declaring class
2011-04-12 09:56 79157/** * <pre> * &l ... -
XML、JavaBean转换
2011-02-11 11:48 2437引用转自http://lywybo.iteye.com/blo ... -
Proxool报错Exception in Thread "HouseKeeper" java.lang.NullPointerException
2011-01-19 17:45 9788问题: 当tomcat里的项目设置成reload=true时, ... -
log4j不打印日志文件到tomcat日志中
2011-01-18 11:06 9357如有以下log4j配置: log4j.rootLogger ... -
dom4j生成xml
2011-01-17 16:00 13591、XMLWriter输出domcument对象: XML ... -
SVN服务端安装
2010-12-18 12:37 1756一、下载安装文件 可执行文件:http://subversio ... -
JAVA中几种概念
2010-08-27 13:52 11611、高内聚(将逻辑上相关的抽象放在一起)低耦合(减少模块间的依 ... -
ehcache报告UnknownHostException错误
2010-06-05 15:07 4893报错如下: java.net.UnknownHostExc ... -
log4j中关闭memcached日志
2010-03-27 18:31 2585log4j.logger.com.danga.MemCache ... -
TreeView鼠标放在node上显示文字
2009-12-08 20:39 1615在node的Text属性上,包一层<span>让其 ... -
BufferedReader和FileReader读取txt文件乱码
2009-11-11 14:11 5017读取txt文件乱码 BufferedReader rea ... -
c3p0 DEBUG -- CLOSE BY CLIENT STACK TRACE
2009-11-06 14:32 4638Indeed, there is nothing to wor ... -
Apach Common 包
2009-10-28 22:47 1219Common IO: FileUtils: File t ... -
File API 常用方法
2009-10-28 15:13 1273File f = new File("c:\\ ... -
Java File.renameTo方法一直返回false
2009-10-22 17:36 7461描述: 在使用File.renameTo修改文件名时,一直返 ... -
File的getPath getAbsolutePath和getCanonicalPath的不同
2009-10-14 21:21 4285引用http://www.blogjava.net/dream ... -
java读取某目录下所有文件名
2009-09-29 15:22 6924Java的Flie对象的list方法可以获取该目录下的所有文件 ...
相关推荐
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请求/...